用于搜索匹配以下字符串的正则表达式

时间:2014-12-23 15:15:12

标签: regex string search

我在源代码中搜索与以下字符串匹配的字符串:

<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>。我如何构建正则表达式?

2 个答案:

答案 0 :(得分:2)

我正在阅读“常量字符串”你的意思是字符串?如果是这样,以下应该可以找到您正在寻找的完整字符串。顺便说一下下面链接的网站非常适合可视化这类问题...试一试:)

(([a-zA-Z]+\s){2})[0-9]{14}\s([a-zA-Z]+)$

Regular expression visualization

Debuggex Demo

要分解......

(([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位数字。