2012-06-02 74 views
1

嗨我已经搜索,但无法找到我正在寻找的答案或者我没有正确阅读它。替换字符串中的所有字符

我有一个的NSString我用

NSString *string1 = [infolist objectAtIndex:0]; 
NSUInteger len = [string1 length]; 

是否有可能取代所有的字符不是空格与说*或其他一些不可读的字符。

例子:this is a string**** ** * ******

+0

可能的[复制](http://stackoverflow.com/q/668228/ 1367611) – Vidul

+0

@ВидулПетров这不是重复的。你给的链接与mrgonuts试图做的很不一样。他希望整个字符串被替换。 – Kimpoy

回答

8

正则表达式来的,如果你的目标OS X 10.7及更高版本:

NSString *originalString = @"This is a string"; 
NSString *nonspaceRegexp = @"\\S"; // = /\S/ 
NSStringCompareOptions options = NSRegularExpressionSearch; 
NSRange replaceRange = NSMakeRange(0, originalString.length); 
NSString *replacedString = [originalString 
          stringByReplacingOccurrencesOfString:nonspaceRegexp 
                 withString:@"*" 
                 options:options 
                  range:replaceRange]; 
NSLog(@"%@", replacedString); // **** ** * ****** 
+0

谢谢,这正是我需要再次感谢 – mrgonuts