在我的公司,我们最近注意到一位开发人员没有使用语言文件,而是将文本直接放在代码中。
我的想法是在引号之间搜索至少包含1个或更多空格的单词。但我有点坚持
("|')(\w|\s{1,})*('|")
这确实匹配文本,但不要求它至少包含1个单词和至少1个空格(因此它匹配引号之间的任何内容)。任何人都可以帮助我吗?
我想用的语言是PHP(或者我可以做一个记事本++搜索)
答案 0 :(得分:2)
如果你想匹配包含“word”和可以使用的空格的单引号或双引号字符串(没有转义):
"(?=[^"\n]*\w)(?=[^"\n]*\s)[^"\n]+"|'(?=[^'\n]*\w)(?=[^'\n]*\s)[^'\n]+'
在PHP中它看起来像:
preg_match_all("/\"(?=[^\"\n]*\\w)(?=[^\"\n]*\\s)[^\"\n]+\"|'(?=[^'\n]*\\w)(?=[^'\n]*\\s)[^'\n]+'/", $string, $matches);