【问题标题】:Word boundary matching in Javascript [duplicate]Javascript中的单词边界匹配[重复]
【发布时间】:2010-11-11 00:10:47
【问题描述】:

这个正则表达式模式:\bgoogle\b

测试用例:http://www.google.com/

匹配。

为什么?

【问题讨论】:

    标签: javascript regex


    【解决方案1】:

    因为句号代表一个词的边界。也就是说,它不是单词的一部分,就像空格、冒号、分号或制表符不是单词的一部分一样。 \b 是一个零宽度的断言,这意味着它本身不匹配任何东西,它只是定义了一些关于匹配的东西。

    【讨论】:

    • 有没有办法指定单词边界字符? (在我的情况下是空间)
    • 你可以指定任何你想要的字符。 \s 代表空格字符。所以 \sgoogle\s 会找到被空格包围的单词“google”(小写)。但是,这可能不足以满足您的所有需求,这就是为什么 \b 可能会很好地坚持下去。请注意,\bgoogle\b 不匹配整个 google 网址,只匹配其中的单词 google。
    【解决方案2】:

    \b 的字边界确实是very tricksy buggers

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多