构建需要在 UIWebView 对象中显示一些 HTML 字符串的 iOS 应用程序。我正在尝试搜索、查找模式并替换为图像的正确链接。图像链接是原始的,例如[pic:brand:123]
,其中pic
is always pic
,brand
可以是任何字母数字,并且123
is 也可以是任何非空白字母数字。
到目前为止,我已经尝试了一些,包括:
NSString *pattern = @"\\[pic:([^\\s:\\]]+):([^\\]])\\]";
但到目前为止,没有一个有效。
这是一个示例代码:
NSString *str = @"veryLongHTMLSTRING";
NSLog(@"Original test: %@",[str substringToIndex:500]);
NSError *error = nil;
// use regular expression to replace the emoji
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:@"\\[pic:([^\\s:\\]]+):([^\\]])\\]"
options:NSRegularExpressionCaseInsensitive error:&error];
if(error != nil){
NSLog(@"ERror: %@",error);
}else{
[regex stringByReplacingMatchesInString:str
options:0
range:NSMakeRange(0, [str length])
withTemplate:[NSString stringWithFormat:@"/%@/photo/%@.gif",
IMAGE_BASE_URL, @"$1/$2"]];
NSLog(@"Replaced test: %@",[str substringToIndex:500]);