我必须对 iOS App 上的 HTML 文件进行动态替换。
这是关于本地化的。
在 HTML 文件中,我有如下内容: LANG(183) 必须转换为“本地化字符串”
我正在查看 stringByreplacingMatchesInString 但找不到任何接受回调函数的版本?我想念什么吗?
我必须对 iOS App 上的 HTML 文件进行动态替换。
这是关于本地化的。
在 HTML 文件中,我有如下内容: LANG(183) 必须转换为“本地化字符串”
我正在查看 stringByreplacingMatchesInString 但找不到任何接受回调函数的版本?我想念什么吗?
您可以使用基于块的匹配方法NSRegularExpression
:
NSMutableString *newString = [htmlString mutableCopy];
[regex enumerateMatchesInString:htmlString
options:0
range:NSMakeRange(0, [htmlString length])
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
// [result range] is the matching range.
// Do something with newString.
}
];
(据我所知)你不能htmlString
在块内修改。因此,您必须首先创建一个可变副本,您可以在块中对其进行修改。
当然,您必须跟踪 的长度的变化newString
,因为匹配范围将始终引用 htmlString
。