用于匹配以“,”或“和”分隔的项目列表的Regext
我想匹配以下内容:第一、第二、第三和第四部分,得到如下不同部分: 第一场比赛:第一场 第二场:第二场 第三场:第三场 第四场:第四场 字符串部分也必须以单词部分结尾。如果没有,则应删除所有匹配项 如何使用regex实现这一点?到目前为止,我已经尝试过: 第一|第二|第三|第四|?=\s分区| \sog\s分区第一|第二|第三|第四|,\s分区第一|第二|第三|第四 注意:正则表达式在这样的字符串上工作是很重要的用于匹配以“,”或“和”分隔的项目列表的Regext,regex,pcre,Regex,Pcre,我想匹配以下内容:第一、第二、第三和第四部分,得到如下不同部分: 第一场比赛:第一场 第二场:第二场 第三场:第三场 第四场:第四场 字符串部分也必须以单词部分结尾。如果没有,则应删除所有匹配项 如何使用regex实现这一点?到目前为止,我已经尝试过: 第一|第二|第三|第四|?=\s分区| \sog\s分区第一|第二|第三|第四|,\s分区第一|第二|第三|第四 注意:正则表达式在这样的字符串上工作是很重要的 其他的lalala,然后是第一、第二、第三和第四部分,还有更多内容。您可以使用l
其他的lalala,然后是第一、第二、第三和第四部分,还有更多内容。您可以使用lookaheads使用这个正则表达式:
\b(first|second|third|fourth)(?=,|\h+(?:and|section)\b)(?=.*\hsection\b)
正则表达式分解:
\bfirst | second | third | 4th-匹配组中的一个或多个给定单词
?=-开始向前看
,-包含逗号
|-或
\h+-1个或多个水平空白
?:-启动非捕获组
和-包含单词和
|-或
节$-字节
-结束非捕获组
\b字边界
-结束展望
?=-开始第二次前瞻
.*节\b-包含单词节
-结束第二个前瞻
编辑:这是进一步修复后的最终正则表达式:
\b第一|第二|第三|第四?=?:\s*?:,|和\s*?:第一|第二|第三|第四*\s+段\b
我已经尝试了很多不同的东西,最后我来了,这是一些文本是挪威语,但我希望它不重要,看到的例子:这是真的很接近,谢谢!我只需要匹配第一,第二,第三和第四?这可能吗?我现在正在尝试,但如果这对你来说很容易,那就太好了!:好吧,那么可能是:应该对你有用完美我对它做了一点修改,允许匹配出现在文本中,而不仅仅是在结尾\第一节第二节第三节第四节谢谢!示例我编辑了您的答案,以反映基于评论的更改。希望这样可以吗?是的,这是非常好的,让我编辑描述也与正则表达式相匹配,使它有助于其他读者。