如何在不创建组的情况下表达“匹配一个或另一个”?

我正在尝试将这种字符串与正则表达式匹配:


{{location|

{{location dec|

{{location other|

所以我想出了这个正则表达式:


{{location( dec| other|)

效果很好,但是它正在创建一个( dec|)我不需要的组。有没有办法做同样的事情但不创建组?


隔江千里
浏览 214回答 2
2回答

慕勒3428872

您需要一个组,但您可以通过?:在左括号后添加来使其成为非捕获组:(?: dec| other|)非捕获意味着该组只为表达式而存在;没有反向引用是可能的,组编号不受影响。

慕桂英546537

您可以使用?:来阻止创建组,因此请尝试:{{location(?: dec| other|)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go