【问题标题】:JS regex match all words in a stringJS 正则表达式匹配字符串中的所有单词
【发布时间】:2015-11-21 15:01:47
【问题描述】:

实际上,我使用 Atom 的语言支持(通过 git)并使用 js 正则表达式,但我必须了解更多相关信息。 我需要在群组中捕获:

/exe c:\dos\main.cpc /l:check

我需要一个带有exe/ 的组,另一个带有c:\dos\main.cpc 的组,另一个带有/l: 的组,最后一个带有check 的组。

我已经试过了:

(exe/)([^=]+)(/l:)(.*)

但它不起作用。

你能帮帮我吗?

【问题讨论】:

    标签: javascript regex regex-group


    【解决方案1】:

    你忘了转义分隔符/

    你的正则表达式应该是:

    (exe\/)([^=]+)(\/l:)(.*)
    

    我建议你在这个网站上测试你的正则表达式:https://regex101.com/

    它会为你检查语法,解释你在正则表达式中使用的每个元素;)

    【讨论】:

      【解决方案2】:

      你可以用这个:

      (.*?)\s+(.*?)\s+(.*?:)(.*)
      

      这里是is a regex test example

      逻辑如下:

      • 第一组选择所有字符直到第一个空白(排除)
      • 后面可以有任意数量的空白字符,但不会被捕获
      • 第二组选择所有字符直到下一个空白(排除)
      • 后面可以有任意数量的空白字符,但不会被捕获
      • 第三组选择冒号之前的所有字符,包括冒号
      • 第四组选择后面的所有字符。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-23
        • 2011-12-13
        • 2017-08-28
        • 1970-01-01
        • 2014-07-09
        • 1970-01-01
        • 2016-12-06
        相关资源
        最近更新 更多