gpt4 book ai didi

java - 如何在正则表达式中提供 OR 运算符?

转载 作者:行者123 更新时间:2023-12-01 07:34:44 27 4
gpt4 key购买 nike

我想将我的字符串与一个或另一个序列匹配,并且它必须至少匹配其中一个。

对于我了解到它可以通过以下方式完成:

(?=one)(?=other)

OR 有类似的东西吗?

我正在使用 Java、Matcher 和 Pattern 类。

最佳答案

一般来说,关于正则表达式,您绝对应该在这里开始您的正则表达式仙境之旅:Regex tutorial

当前需要的是|(管道字符)

要匹配字符串 one OR other,请使用:

(one|other)

或者如果您不想存储匹配项,只需简单

one|other

针对Javathis article is very good at explaining the subject

您必须这样使用您的模式:

//Pattern and Matcher
Pattern compiledPattern = Pattern.compile(myPatternString);
Matcher matcher = pattern.matcher(myStringToMatch);
boolean isNextMatch = matcher.find(); //find next match, it exists,
if(isNextMatch) {
String matchedString = myStrin.substring(matcher.start(),matcher.end());
}

请注意,关于 Matcher 还有更多可能性那么我在这里显示的内容...

//String functions
boolean didItMatch = myString.matches(myPatternString); //same as Pattern.matches();
String allReplacedString = myString.replaceAll(myPatternString, replacement)
String firstReplacedString = myString.replaceFirst(myPatternString, replacement)
String[] splitParts = myString.split(myPatternString, howManyPartsAtMost);

此外,我强烈建议使用在线正则表达式检查器,例如 Regexplanet (Java)regex101 ,它们让您的生活变得更加轻松!

关于java - 如何在正则表达式中提供 OR 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13602954/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com