为了分割一些文本,我试图制作一个包含以下内容的正则表达式:从(
开始直到第一个)
的文本部分,其中OR位于匹配之间。
示例输入1:
(Test OR test2) some more text
通缉赛1:
(Test OR test2)
示例输入2:
(Test OR test2 OR test3) some more text (TEST1 OR test2)
通缉赛2:
(Test OR test2 OR test 3)
如果文本中没有OR,例如
"(Test AND test2 AND test3) some more text"
那我就不想匹配了。
我能够制作一个正则表达式来获取()中的文本:
(([^)]+))
我应该如何为上述用户案例更新它?
您可以使用
([^()]*bORb[^()]*)
查看regex演示
详细信息:
(
-一个(
字符[^()]*
-除(
和)
之外的零个或多个字符bORb
-一个完整的单词OR
[^()]*
-除(
和)
之外的零个或多个字符)
-一个)
字符