是的,我是新手,我在网上看过,似乎找不到以下答案,我知道这很简单。
我有一个简单的字符串,需要匹配大写字母,例如T G D ......中继器, 其次,我需要用大写字母匹配它们之间的点且没有空格,例如T.G.D ........ repeater
我有当前字符串= str.match(/ [A-Z] [A-Z] | [A-Z]。[A-Z] / g)
但这只会匹配前两个,例如 T G 我需要它与找到以下模式的任何地方匹配,例如T G D E F L ...重复一个匹配项
同样,它只会匹配T.G,但不会匹配例如 T.G 之后的任何内容。我需要匹配 T.G.D.L.T 中继器(可能以点结尾,也可能没有)
任何帮助将不胜感激。
答案 0 :(得分:0)
您可以使用与字符类([. ])
匹配前2个大写字母并捕获组1中的空格或点。然后(可选)使用向后引用加上首字母A-Z重复捕获的内容。
\b[A-Z]([. ])[A-Z](?:\1[A-Z])*\b
\b
字边界[A-Z]([. ])[A-Z]
匹配A-Z,在与空间或.
(?:\1[A-Z])*
重复0+次以匹配其在第1组中捕获的内容,然后是A-Z \b
字边界