JS正则表达式匹配字符串中的所有单词
JS regex match all words in a string
实际上,我从事 Atom 语言支持(git),我使用 js 正则表达式,但我必须了解更多。
我需要在群组中捕捉:
/exe c:\dos\main.cpc /l:check
我需要一组 exe/
,另一组 c:\dos\main.cpc
,另一组 /l:
,最后一组 check
。
我已经试过了:
(exe/)([^=]+)(/l:)(.*)
但是没有用。
你能帮帮我吗?
您忘记转义定界符 /
你的正则表达式应该是:
(exe\/)([^=]+)(\/l:)(.*)
我建议你在这个网站上测试你的正则表达式:https://regex101.com/
它将根据您在正则表达式中使用的每个元素的解释为您检查语法 ;)
你可以使用这个:
(.*?)\s+(.*?)\s+(.*?:)(.*)
这里 is a regex test example 个。
逻辑如下:
- 第一组选择所有字符直到第一个空白(排除)
- 可以跟随任意数量的白色 space 字符,但不会被捕获
- 第二组选择所有字符直到下一个空白(排除)
- 可以跟随任意数量的白色 space 字符,但不会被捕获
- 第三组选择冒号之前的所有字符,包括冒号
- 第四组选择后面的所有字符。
实际上,我从事 Atom 语言支持(git),我使用 js 正则表达式,但我必须了解更多。 我需要在群组中捕捉:
/exe c:\dos\main.cpc /l:check
我需要一组 exe/
,另一组 c:\dos\main.cpc
,另一组 /l:
,最后一组 check
。
我已经试过了:
(exe/)([^=]+)(/l:)(.*)
但是没有用。
你能帮帮我吗?
您忘记转义定界符 /
你的正则表达式应该是:
(exe\/)([^=]+)(\/l:)(.*)
我建议你在这个网站上测试你的正则表达式:https://regex101.com/
它将根据您在正则表达式中使用的每个元素的解释为您检查语法 ;)
你可以使用这个:
(.*?)\s+(.*?)\s+(.*?:)(.*)
这里 is a regex test example 个。
逻辑如下:
- 第一组选择所有字符直到第一个空白(排除)
- 可以跟随任意数量的白色 space 字符,但不会被捕获
- 第二组选择所有字符直到下一个空白(排除)
- 可以跟随任意数量的白色 space 字符,但不会被捕获
- 第三组选择冒号之前的所有字符,包括冒号
- 第四组选择后面的所有字符。