【发布时间】:2013-01-29 07:27:11
【问题描述】:
我在 Regex 方面一直在进步,但我想出了一些超出我目前能力范围的东西。
我想构建一个函数来测试(返回真或假)来测试是否在字符串中找到一个单词。但是,如果在另一个词中找到了这个词,我不希望有一个肯定的匹配。我还想增加检查复数的可能性。
以下是一些我希望得到的结果示例:
要查找的单词:“bar”
"要搜索的字符串" //它应该返回的内容
"foo bar" //真
“富吧。” //真
“富吧!” //true(对于“bar”之前或之后的任何其他标点符号也是如此)
“富酒吧。” //真
“傻乎乎的。” //true(即使bares与bars有不同的含义,我也可以返回true,因为我需要检查以“es”复数形式的单词,并且我不希望构建一个正则表达式来知道哪些单词用“s”复数,用“es”复数)
"my name is bart simpson" //false (bar 实际上是 "bart" 的一部分)
“巴特·辛普森去了酒吧。” //真
我将使用 javascript/jquery 来检查匹配项
非常感谢您的帮助!
【问题讨论】:
-
所以“child”不应该匹配“children”,对吗?
-
是的,我不希望“child”匹配“children”。
-
正则表达式很难做到多元化。 mouse/mice 和 colossus/colossi 呢?
-
Frits,我不希望匹配这些类型的复数词。
-
这些情况怎么样:
in5bar,bares_random,Ăbar
标签: javascript regex