我觉得这应该是非常直接的,但我似乎无法绕过它。
比如说,我们有以下字符串: “照片照片”
我想编写一个返回字符串“Photo”部分的正则表达式,但不会返回“Photos”部分,因为它中有一个“s”。我该怎么写这个正则表达式?
答案 0 :(得分:3)
有很多方法可以编写这样的regexp
,您必须优化条件才能获得最佳条件。
假设您需要匹配Photo
仅当它是一个完整的单词而不是一个较长单词的一部分时,表达式为:
/\bPhoto\b/
\b
件是与字边界匹配的特殊regexp
构造,即单词字符(字母,数字,下划线)和非单词字符(其他任何东西)之间的过渡。
正斜杠(/
)不是regexp
的一部分,它们是分隔符。有些工具和语言需要它们,编辑器和IDE通常不需要它们,有些工具允许用户选择分隔符(来自不是很大的列表)。
答案 1 :(得分:0)
如果你想抓住一个没有s的单词,请使用此...
([A-Ra-r]|[T-Zt-z])+\s