例如,regular
表达式是:
A(B)C
A,B,C都表示某个字符串。我希望所有字符串都与A(B)C匹配,用B替换。
如果
NSString
是AABCAABCBBABC:这件安全套是ABABBBB。怎么做?谢谢您。
我举了一个更具体的例子:
<script\stype="text/javascript"[\s\S]*?(http://[\s\S]*?)'[\s\S]*?</script>
答案是一些脚本匹配和
http://
url匹配。我想使用每个
http://
url匹配来替换每个脚本匹配。我解释清楚了吗? 最佳答案
一种解决方案可以使用stringByReplacingMatchesInString
:
NSString *strText = @"AABCAABCBBABC";
NSError *error = nil;
NSRegularExpression *regexExpression = [NSRegularExpression regularExpressionWithPattern:@"ABC" options:NSRegularExpressionCaseInsensitive error:&error];
NSString *strModifiedText = [regexExpression stringByReplacingMatchesInString:strText options:0 range:NSMakeRange(0, [strText length]) withTemplate:@"B"];
NSLog(@"%@", strModifiedText);
另一种解决方案是使用
stringByReplacingOccurrencesOfString
:strText = [strText stringByReplacingOccurrencesOfString:@"ABC" withString:@"B"];