文字列に影響を与えることなく、括弧の間の空白を削除するには:どのように私はこのようになります文字列を持っている
私は括弧を削除したい
(
TEST STRING
)括弧間の空白は削除されますが、文字列内の空白は削除されません。
基本的には、文字列が必要です。私はトリミングと交換を検討しましたが、私は彼らがここに応募したとは思いません。
この問題の解決方法についてのヒントはありますか?
おかげ
文字列に影響を与えることなく、括弧の間の空白を削除するには:どのように私はこのようになります文字列を持っている
私は括弧を削除したい
(
TEST STRING
)括弧間の空白は削除されますが、文字列内の空白は削除されません。
基本的には、文字列が必要です。私はトリミングと交換を検討しましたが、私は彼らがここに応募したとは思いません。
この問題の解決方法についてのヒントはありますか?
おかげ
これは動作するはずです:
NSString *originalString = @"(TEST STRING)";
NSString *newString = [originalString stringByReplacingOccurrencesOfString:@"(" withString:@""];
newString = [newString stringByReplacingOccurrencesOfString:@")" withString:@""];
/agree ...常に空間があることが分かっている限り、彼のソリューションは読みやすくなります。 –
Iだろう(NSRegularExpressionSearch | NSAnchoredSearch)使用することを検討して、このような 何かを(私はその場でコードを書いているそのので、おそらく正しくない
。NSRange rng = [myString rangeOfString:@"([ \t\n\r]*" options:(NSRegularExpressionSearch | NSAnchoredSearch)];
NSRange rng = [myString rangeOfString:@"[ \t\n\r]*)" options:(NSRegularExpressionSearch | NSAnchoredSearch | NSBackWardsSearch)];
if (rng.length && rng2.length)
{
myString = [myString substringToIndex:rng2.location];
myString = [myString substringFromIndex:rng.location];
}
string = [string stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"()"]];
そして空白をトリミングします。当然の
string = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSCharacterSet *unwantedChar = [NSCharacterSet characterSetWithCharactersInString:@" "@"\"-[}()\n "];
NSString *requiredString = [[string componentsSeparatedByCharactersInSet:unwantedChar] componentsJoinedByString: @""];
このコードは問題を解決するかもしれませんが、説明を追加すると、それがなぜ/どのように動作するかを理解するのに役立ちます。 – BDL
私はここに必要な説明がないと思います。この行を見ると、それがどのように機能するのかわかります。 –
彼らはここに適用されます。いくつかのコードを表示します。要件をより明確に定義することができます。 –
'TEST STRING'が二重引用符で囲まれていると、フォーマットが古いNextStepフォーマット(Terminal.appの配列や辞書の表示に使用されています)と一致するため、' NSPropertyListSerialization'で文字列を簡単に抽出できます。 – vadian