标签: regex
我想匹配以下任何一种情况:
blue car car blue red car car red
我正在使用这种模式: /(car\s)?(red|blue)(\scar)?/
/(car\s)?(red|blue)(\scar)?/
但此模式也会在{/ 1}}或red之前与之前/之后没有单词blue匹配。
red
blue
如果不使用组或多种模式,可以这样做吗?
答案 0 :(得分:1)
您可以在PCRE中使用条件子模式:
(?:\b(car)\s+)?\b(?:red|blue)\b(?(1)\s*|\s+car\b)
RegEx Demo