例如,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"];

10-08 12:29