1. ホーム
  2. cocoa

NSStringから非英数字を取り除く

2023-10-30 02:57:08

質問

から英数字以外の文字を取り除く簡単な方法を探しています。 NSString . おそらく NSCharacterSet を使うのでしょうが、疲れましたし、何も文字列の中の英数字だけを含む文字列を返してくれるわけではなさそうです。

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

分割してから結合すればいいのです。componentsSeparatedByCharactersInSet のために OS X 10.5+ が必要です。

NSCharacterSet *charactersToRemove = [[NSCharacterSet alphanumericCharacterSet] invertedSet];
NSString *strippedReplacement = [[someString componentsSeparatedByCharactersInSet:charactersToRemove] componentsJoinedByString:@""];