根据本指南,我可以使用NSPredicate对字符串进行正则表达式匹配,即perl等价于$my_string =~ m/[some regex]/
但我可以做正则表达式替换,即相当于这个perl表达式:$my_string =~ s/[pattern]/[replacement]/g
?
Google Toolbox for Mac具有一些有用的正则表达式功能.它适用于iPhone.看看GTMRegex.h.使用此方法在NSString上有一个类别:
- (NSString *)gtm_stringByReplacingMatchesOfPattern:(NSString *)pattern withReplacement:(NSString *)replacementPattern;
我找到的最简单的解决方案是RegexKitLite:
http://regexkit.sourceforge.net/
(注意"Lite"版本是您用于iPhone的版本)
只需要添加到项目中的两个文件,以及链接器的-licucore标志.它使用内置的正则表达式功能.
它具有NSString扩展,包括要进行替换的扩展,也可以按编号拉出多个匹配.