1. ホーム
  2. ios

[解決済み] Objective-C - 文字列から最後の文字を削除する

2022-04-28 22:42:56

質問

Objective-C for iOSで、ボタンアクションを使って文字列の最後の文字を削除するにはどうしたらよいでしょうか?

どのように解決するのですか?

コントローラクラスで、Interface Builderでボタンをフックするためのアクションメソッドを作成します。そのメソッドの中で、以下のように文字列をトリミングします。



if ([string length] > 0) {
    string = [string substringToIndex:[string length] - 1];
} else {
    //no characters to delete... attempting to do so will result in a crash
}










もし、これをたった1行のコードで派手にやりたいなら、次のように書けばいい。

string = [string substringToIndex:string.length-(string.length>0)];


*派手な1行のコードスニペットの説明。



削除する文字がある場合(つまり、文字列の長さが0より大きい場合)。

(string.length>0) が返ってくる 1 このように、コードを返すようにします。

string = [string substringToIndex:string.length-1];



削除する文字がない場合 (文字列の長さが 0 よりも大きくない場合)

(string.length>0) が返ってくる 0 このように、コードを返すようにします。

string = [string substringToIndex:string.length-0];

     クラッシュを防ぐことができる。