我正在寻找一个正则表达式来匹配带有连字符和/或撇号的单词。到目前为止,我有:
(\w+([-'])(\w+)?[']?(\w+))
这在大多数情况下都有效,但如果先有一个撇号,然后有一个连字符,例如“qu'est-ce”,则它不匹配。我可以附加更多选项,尽管也许还有另一种更有效的方法?
我试图匹配的一些例子:Mary's、High-school、'tis, Chambers'、Qu'est-ce。
使用这个模式
(?=\S*['-])([a-zA-Z'-]+)
Demo https://regex101.com/r/yW4aZ3/267
(?= # Look-Ahead
\S # <not a whitespace character>
* # (zero or more)(greedy)
['-] # Character in ['-] Character Class
) # End of Look-Ahead
( # Capturing Group (1)
[a-zA-Z'-] # Character in [a-zA-Z'-] Character Class
+ # (one or more)(greedy)
) # End of Capturing Group (1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)