我想知道我们是否可以使用模式处理特定的输入,如以下示例:
[1] 或[1,2]
所以基本上是用一个数字括起来,或者如果有更多的数字,那么只允许逗号作为分隔符。
尝试了如下所述的[(\d+(\s*,?((+],但不起作用。
这样做:
^[(?:d+(?:,d+)*)?]$
^
-起始线锚[
-开放文字方括号(?:
-打开非捕获组d+
-一个或多个数字(?:
-打开非捕获组,d+
-逗号后跟一个或多个数字
)
-关闭非捕获组*
-非捕获组内匹配模式零次或多次
)
-关闭非捕获组?
—使前面的非捕获组内容可选;基本上,允许空[]
]
-闭合文字方括号$
-端线锚
https://regex101.com/r/BuRsND/1
使用此正则表达式[(d+(s*(,(?=d))?))+]