替换字符串中的所有字符

时间:2012-06-02 06:32:17

标签: objective-c

您好我已经搜索过但无法找到我正在寻找的答案,或者我没有正确阅读。

我使用的是NSString

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

是否可以用a *或其他一些不可读的字符替换所有不是空格的字符。

示例:this is a string**** ** * ******

1 个答案:

答案 0 :(得分:9)

如果您定位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); // **** ** * ******