我正在尝试构造一个正则表达式来查找以下变体的文本。
NSLocalizedString(@"TEXT")
NSLocalizedStringFromTable(@"TEXT")
NSLocalizedStringWithDefaultValue(@"TEXT")
...
目标是提取TEXT
。我已经能够为每个单独的函数或宏构建一个正则表达式,例如 (?<=NSLocalizedString)\(@"(.*?)"
。但是,我正在寻找一种解决方案,无论函数的名称是什么,只要它以 NSLocalizedString
开头即可完成工作。 .
我认为它就像 (?<=NSLocalizedString\w+)\(@"(.*?)"
一样简单,但这似乎并不能解决问题。
最佳答案
这个怎么样?
/NSLocalizedString\w*\(@"(.*)"\)/
说明:
NSLocalizedString 'NSLocalizedString'
\w+ word characters (a-z, A-Z, 0-9, _) (0 or
more times (matching the most amount
possible))
\( '('
@" '@"'
( group and capture to \1:
.* any character except \n (0 or more times
(matching the most amount possible))
) end of \1
" '"'
\) ')'
关于objective-c - 匹配函数特定变体的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20021486/