将两个正则表达式组合成一个

时间:2010-08-13 13:36:09

标签: java regex

我有一个有效的正则表达式:ABC-[0-9]+

我也有正则表达式:DEF-[0-9]+

但是我不知道如何将两者结合起来以便它们都匹配

我试过了ABC-[0-9]+ | DEF-[0-9]+,但它没有真正起作用......

如果重要的话,这都是Java正则表达式。

3 个答案:

答案 0 :(得分:7)

如果您想要一个与以ABCDEF开头的序列匹配的正则表达式,请尝试以下操作:

(ABC|DEF)-[0-9]+

但是除了|周围的两个空格字符外,你的正则表达式也应该匹配:

ABC-[0-9]+|DEF-[0-9]+

这两个正则表达式匹配同一组字符串。

答案 1 :(得分:0)

您需要对两个正则表达式进行分组,使用atomic group

(?>ABC-[0-9]+)|(?>DEF-[0-9]+)

答案 2 :(得分:0)

尝试(ABC-[0-9]+)|(DEF-[0-9]+)