正则表达式用于双引号和非双引号字符串

时间:2019-05-01 11:24:57

标签: regex

我正在尝试解析CLI命令的参数,输入内容可能类似于

  1. "system console" 44(双引号之间可以有空格)

  2. system 45(如果第一个参数没有双引号,则不能有空格,即system

我尝试为输入模式构建正则表达式,如第1点所示-("[^"]*")\s*(\d*)

但是,此正则表达式仅适用于输入#1。我正在尝试构建一个适用于上述两种输入的正则表达式。

1 个答案:

答案 0 :(得分:1)

在您的第一组中,用单词字符(或非空格字符)替代:

("[^"]*"|\w+)\s*(\d*)

https://regex101.com/r/01RRu3/1