需要正则表达式来匹配模式

时间:2015-04-21 00:32:02

标签: regex

我需要一个正则表达式来匹配下面的模式

Word1 OR Word2 OR Word3 OR......

基本上这是一个字符串,其中包含按OR分割的单词

3 个答案:

答案 0 :(得分:1)

你可以这样做:

(\w+)(?=(?:\s+OR)|(?:\s*$))

Demo

答案 1 :(得分:0)

执行类似的操作并使用\ 2:

访问第二组
((\w+)\sOR)*

尝试播放下面的链接,阅读说明,您就会明白它的工作原理: https://regex101.com/r/vY6mA7/1

答案 2 :(得分:0)

以下内容将根据您提供的内容进行匹配:

^\w+(?: OR \w+)*$
  

^断言字符串开头的位置
  \w+匹配任何单词字符[a-zA-Z0-9_]
  Quantifier: +在一次和无限次之间,尽可能多次,根据需要回馈[贪心]   (?: OR \w+)*非捕获组
  Quantifier: *在零和无限次之间,尽可能多次,根据需要回馈[贪心]
  _OR_字面匹配字符_OR_(区分大小写)
  \w+匹配任何单词字符[a-zA-Z0-9_]
  Quantifier: +在一次和无限次之间,尽可能多次,根据需要回馈[贪心]   $断言字符串末尾的位置

注意:我使用_OR_来显示引号中OR周围的空格,因为忽略了空格。

链接到Regex101