代码之家  ›  专栏  ›  技术社区  ›  user4904589

Regex Coach的选择是否不正确?

  •  0
  • user4904589  · 技术社区  · 10 年前

    [^a] 解释如下:

    enter image description here
    您可以看到它只选择了第一个字符,而不是 a . 但是 regexr.com 如下图所示,以不同方式选择此选项。

    enter image description here

    Regexr.com 确保 [^a] 匹配所有不匹配的字符 . 那么,其中哪一个是错误的?

    2 回复  |  直到 10 年前
        1
  •  3
  •   Rubens Farias    10 年前

    [^a] 代表“任何不同于‘a’的字符”。

    在第二个示例中,您添加了 g 修改器,进行该选择 global 而不仅仅是第一次出现。

    在两个应用程序中进行相同的选择,结果应该相同。

        2
  •  1
  •   Linus Kleen    10 年前

    两者都是正确的。

    注意在第一个屏幕截图中 g 标志未选中?它只匹配第一个非a字符(黄色背景)。

    第二张截图显示了表达式 /[^a]/g 这意味着“尽可能多的非a字符匹配”(点击有蓝色背景)。