10

我正在我的应用程序中搜索所有硬编码的字符串,以便对它们进行本地化。目前,我正在使用正则表达式搜索 @"[^"]+",如此答案中所建议: Searching hard coded text in xcode

问题是我只想找到这种格式的一些字符串。例如,我想排除 [UIImage imageNamed:@"string"] 和 NSLog(@"Log string")。我相信最简单的方法是找到@"[^"]+" 格式的字符串,只要前面的字符不包括 NSLog( 或 imageNamed: 或我将手动输入的其他几项内容。

如何编写排除这些情况的正则表达式?

4

3 回答 3

12

您可以使用否定的lookbehind排除这些情况:

(?<!(imageNamed:|NSLog\())@"[^"]+"

于 2013-10-15T19:00:20.487 回答
4

我认为这会更全面

"[a-zA-Z0-9 ?!.,;/\-=+)(*&%#@]+"

搜索 > 查找 > 正则表达式 -- 输入

在此处输入图像描述

在此处输入图像描述

于 2019-08-05T07:53:26.807 回答
3

对于 Swift 项目

在 Xcode > 搜索 > 查找 > 正则表达式中——输入"[a-zA-Z0-9]+"

在此处输入图像描述

于 2018-02-22T12:22:55.947 回答