Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何对文本字符串求反_Javascript_Regex - Fatal编程技术网

Javascript 如何对文本字符串求反

Javascript 如何对文本字符串求反,javascript,regex,Javascript,Regex,我试图匹配传递给curl命令的所有参数,如下所示: curl -X POST --pro2gress -c --command=ASD --dos pl -slp "asd" --asdeee "asd \"hh\" s" "string" 对此 curl (-X POST) (--pro2gress) (-c) (--command=ASD) (--dos pl) (-slp "asd") (--asdeee "asd \"hh\" s") "string" 到目前为止,我所拥有的一切都是

我试图匹配传递给curl命令的所有参数,如下所示:

curl -X POST --pro2gress -c --command=ASD --dos pl -slp "asd" --asdeee "asd \"hh\" s" "string"
对此

curl (-X POST) (--pro2gress) (-c) (--command=ASD) (--dos pl) (-slp "asd") (--asdeee "asd \"hh\" s") "string"
到目前为止,我所拥有的一切都是匹配的,除了组--从asdeee到string“

我正在寻找一种不停地从“到”看的方式

希望有人能给我指出正确的方向

这是要玩的垫子

(编辑)语言是javascript


谢谢

要匹配所有选项,请使用以下选项:

--?\S+(?:[ ]+(?!-)(?:[\w-]+|(?<!\\)"(?:\\"|[^"\r\n])*+"))?

  • --?
    匹配一个或两个连字符
  • \S+
    匹配任何非空白字符(空格、制表符等)的字符
  • 非捕获组
    (?:[]*(?!-)(?:[\w-]+|“(?:\\“|[^”\r\n])*”))
    可以选择匹配
  • []+(?!-)
    空格字符后面不带连字符,然后
  • [\w-]+
    任意数量的连字符和单词字符(包括数字),或
    |
  • “(?:\\“\[^”\r\n])*”
    可能包含转义引号的双引号字符串

如果问题不太多,您能否详细说明“(?:\\”\124;[^”\ r\n])*”背后的逻辑?我特别不明白为什么要把\ \“或其他任何东西”或\r或\n。
打开双引号。请注意,n“完整的味道”“,在这个阶段,我有一个消极的回顾,以确保前面的不是反斜杠,但在这种情况下,这并不重要。现在我们已经过了开盘价,我们想要匹配什么?或者:转义引号
\\“
,因为它们在字符串中有效…或者任何既不是引号也不是新行字符的字符,这就是
[^”\r\n]
的含义。当然,如果您希望字符串跨行匹配,请删除
\r\n
。。。我们匹配了零次或更多次,然后匹配了结束引号
这有帮助吗?非常有帮助。谢谢。我正在使用javascript,一边写一边编辑问题。
--?\S+(?:[ ]+(?!-)(?:[\w-]+|(?<!\\)"(?:\\"|[^"\r\n])*+"))?
var regex = /--?\S+(?:[ ]*(?!-)(?:\w+|"(?:\\"|[^"\r\n])*"))?/g;