我在源代码中搜索与以下字符串匹配的字符串:
<CONSTANT_STRING_1> <CONSTANT_STRING_2> <VARIABLE_DIGITS> <CONSTANT_STRING_3>
,其中
<CONSTANT_STRING_1>
,<CONSTANT_STRING_2>
和<CONSTANT_STRING_3>
是常量字符串,如“ABC”,“”DEF“和”GHI“。
<VARIABLE_DIGITS>
是14位数的随机数字,如“12345678901234”
注意:单词之间有空格。
我要找的是搜索<CONSTANT_STRING_1> <CONSTANT_STRING_2> <WHATEVER> <CONSTANT_STRING_3>
。我如何构建正则表达式?
答案 0 :(得分:2)
我正在阅读“常量字符串”你的意思是字符串?如果是这样,以下应该可以找到您正在寻找的完整字符串。顺便说一下下面链接的网站非常适合可视化这类问题...试一试:)
(([a-zA-Z]+\s){2})[0-9]{14}\s([a-zA-Z]+)$
要分解......
(([a-zA-Z]+\s){2})
表示由LC或UC字母后跟空格组成的一个或多个字符的字符串,整个事物(字符+空格)重复两次
[0-9]{14}\s
14位数后跟一个空格。正如@Avinash所说\ d {14} \ s是写这部分的另一种方式
([a-zA-Z]+)$
另一个包含一个或多个字符的字符串。 $表示结束了您要搜索的字符串
答案 1 :(得分:0)
您可以尝试下面的正则表达式。
<CONSTANT_STRING_1> <CONSTANT_STRING_2> \d{14} <CONSTANT_STRING_3>
其中,\d{14}
完全匹配14位数字。