java查找两个带空格和不带空格但有单词边界的单词
我对regex世界还不熟悉。所以请原谅。努力学习,我有以下要求
我正试图找到一个正则表达式,它可以从下面的字符串中找到Cis和Cis-femal
字符串:This usa gender Female male Cis Female a2412421
我试过:
\bCis(.)*Female\b
\bCis\s*Female\b
\bCis(.)*Female\b
\bCis\b|\bCis Female\b
(\bCis\b)|(\bCis Female\b)
应用正则表达式后,输出应为Cis和Cis-Female。任何线索都是非常感谢的。提前谢谢
# 1 楼答案
我会这样做:
输出:
请注意,正则表达式
(Cis)(\s+\w+)?
与Cis
匹配,后跟可选字符(一个或多个空格字符,后面跟着一个或多个单词字符)# 2 楼答案
你可能是说这样的事
在这里,您将“Cis”和“Cis女性”匹配为两个组。CI和女性都有一个(零长度)单词边界和1。。n它们之间的空格
一些背景:您不能在一个匹配器调用中多次匹配输入字符串中的同一部分。因此,您必须应用两个正则表达式。现在,您需要用一个正则表达式匹配两个字符序列。这可以通过如下所述将它们匹配到不同的组中来实现