Regex 按前缀匹配组的正则表达式
我有以下字符串:CL_6x CL_5c CL_234 CL_ERB14 1D CL_6y 我需要找到一个正则表达式来提取这样的组Regex 按前缀匹配组的正则表达式,regex,Regex,我有以下字符串:CL_6x CL_5c CL_234 CL_ERB14 1D CL_6y 我需要找到一个正则表达式来提取这样的组 CL_6x CL_5c CL_234 CL_ERB14 1D CL_6y 正如您所看到的,它们的前缀都是CL. 如何实现这一点有什么想法吗?您可以使用以下正则表达式 ^CL_.+\b 解释 ^:以开头 CL:匹配文字CL +:多次匹配任意字符 \b:单词边界 试试这个。请看演示。\b是单词边界 编辑: 对于测试用例,如CL_ERB14 1D 使用 见演示 您
- CL_6x
- CL_5c
- CL_234
- CL_ERB14 1D
- CL_6y
如何实现这一点有什么想法吗?您可以使用以下正则表达式
^CL_.+\b
解释
^
:以开头CL
:匹配文字CL
+
:多次匹配任意字符\b
:单词边界\b
是单词边界
编辑:
对于测试用例,如CL_ERB14 1D
使用
见演示
您需要使用基于正向前瞻的正则表达式
\bCL_.*?(?=\s*CL_|$)
这应该一直匹配到下一个CL
或行尾
这不匹配
CL\u ERB14 1D
这是所有答案中唯一有效的一个。谁是第一个,Avinash有100k或:DYU你不会找到一个后面没有另一个CL(或字符串结尾)的CL。他的琴弦正好是这样,但也许他不是这样问的。@Jonny5 Ya,我今天就要打10万了。。那是什么联系?让我检查一下。这与下面的任何内容都匹配。也许他想匹配每个单独的代码,而不是整个字符串……好吧,这样更好,但它仍然不匹配包含空格的代码。
CL_\S+(?:\s*(?!CL_)\S+)
\bCL_.*?(?=\s*CL_|$)