首页 > 解决方案 > RegExp:如何为列表构建正则表达式

问题描述

我正在尝试制作一个正则表达式来匹配以下结构:

 []
 [A]
 [A, A]
 [A, A, A]

ETC..

到目前为止我能达到的最好的是:

\[A?|(A(, A)*)*\]

但这还不够好。

标签: regex

解决方案


您可以使用

\[(?:A(?:, A)*)?]

查看正则表达式演示

细节

  • \[- 一个[字符
  • (?:A(?:, A)*)?- 一个可选的非捕获组匹配
    • A- 一个A
    • (?:, A)*- 0 次或多次连续出现,, 空格和A
  • ]- 一个]字符。

推荐阅读