如何在Java中匹配字符串(?,?,?)

Abh*_*gde 4 java regex

我的输入字符串的形式为:字符串输入=“(?,?,?)”;

我无法提出有效的正则表达式来识别此类字符串

我已经尝试过以下正则表达式:

String regex = "(\\?,*)"; 
Run Code Online (Sandbox Code Playgroud)

上面的正则表达式对诸如(?,?)或(?,?,?,?)等输入字符串的声明失败

The*_*ird 5

您可以匹配(?,然后重复1+次,?并匹配)

如果单个问号也有效,则可以将量词从更改+*

\(\?(?:,\?)+\)
Run Code Online (Sandbox Code Playgroud)

说明

  • \(\? 比赛 (?
  • (?:,\?)+ 非捕获组,重复1次以上 ,?
  • \) 比赛 )

在Java中

final String regex = "\\(\\?(?:,\\?)+\\)";

正则表达式演示 | Java演示