Java 其他正则表达式模式
是否存在包含(第1部分|第2部分|……)和[第2部分]的正则表达式模式: (part1 | part2)将匹配第1部分或第2部分,例如leav(e | ing)匹配离开和离开 [部分]是一个可选词,例如cat[s]将匹配cat和catsJava 其他正则表达式模式,java,regex,Java,Regex,是否存在包含(第1部分|第2部分|……)和[第2部分]的正则表达式模式: (part1 | part2)将匹配第1部分或第2部分,例如leav(e | ing)匹配离开和离开 [部分]是一个可选词,例如cat[s]将匹配cat和cats 我还想确定每个模式中必须包含的单词,例如give cat[s]将匹配give cat和give cat\bcats?\b将匹配两个cat,cat,但在cate中不匹配cat \blav(?:e|ing)\b将同时匹配离开和离开 \b部分(?:1 | 2 | 3)
我还想确定每个模式中必须包含的单词,例如give cat[s]将匹配give cat和give cat
\bcats?\b
将匹配两个cat
,cat
,但在cate
中不匹配cat
\blav(?:e|ing)\b
将同时匹配离开
和离开
\b部分(?:1 | 2 | 3)?\b
将与第1部分
、第2部分
、第3部分
或部分
匹配,但不与分开
或合作伙伴
解释
\b // Forces a word boundary so that it does not match in the middle of a word like part in apart
(?: //Non capturing group so that we do not have extra groups in the matches, using this is a matter of choice
| //OR
? //Previous char in cats previous group in (?:1|2|3) is optional
请注意,在初始化正则表达式字符串时,您需要在
\b
中转义\
。我不理解您的问题。可以向我们展示示例输入和输出以及正则表达式如何应用于它吗?要在正则表达式中指定可选位,可以使用?
。例如,猫?将匹配“猫”和“猫”(第1部分)?第2部分将匹配“第1部分2”和“第2部分”leav(e|ing)(?>\\scats?
将匹配规范-如它所示。