我们可以在java中使用正则表达式检查多个模式吗?

我们可以在java中使用正则表达式检查多个模式吗?,java,regex,Java,Regex,我想用正则表达式检查2个模式 我可以同时检查这两种模式吗(比如if(condition1 | condition2)条件) 有什么想法吗?你可以完全按照你的方式来做,用管道将两个+表达式分开 例如:正则表达式(abc)|(def)将匹配abc或def,这实际上取决于-也就是说,您可以使用“或”这样的修饰符(匹配此)|(或此)”来设计正则表达式。如果使用精心设计的正则表达式,只需执行以下操作: Pattern p1 = Pattern.compile(regex) Matcher m = p1.m

我想用正则表达式检查2个模式

我可以同时检查这两种模式吗(比如if(condition1 | condition2)条件)


有什么想法吗?

你可以完全按照你的方式来做,用管道将两个+表达式分开


例如:正则表达式
(abc)|(def)
将匹配
abc
def
,这实际上取决于-也就是说,您可以使用“或”这样的修饰符
(匹配此)|(或此)”
来设计正则表达式。如果使用精心设计的正则表达式,只需执行以下操作:

Pattern p1 = Pattern.compile(regex)
Matcher m = p1.matcher(searchstring)
一次。这可能是处理事情最有效的方式。另一个选项是运行两个matcher/pattern对象对,运行
find
操作,直到
find
返回false,然后计算输出数。如果它们都大于0,则表示您在做生意。另一个选项是,如果您只需要一个或多个匹配项,则执行以下操作:

if ( matcher1.find() & matcher2.find() )
{
    ...
}

这就是语法。正则表达式
pattern1 | pattern2
表示“匹配pattern1或pattern2”。