我正在尝试编写一个正则表达式来检查字符串是否构成一组整数
ex: {1, 23, -501, 52, 2387329, 0}
到目前为止我已经得到:
Pattern p = [({(([0-9]+,)*[0-9]+)})]
但它似乎不起作用...任何人都可以帮助我吗?
谢谢!
最佳答案
Pattern.compile("\\{\\s*(?:\\d+(?:\\s*,\\s*\\d+\\s*)*)?\\}")
匹配包围零个或多个逗号分隔的非负十进制整数的大括号。
\\s
匹配任何空格字符。 (?:...)
仅用于分组,大括号之间的内容实际上是可选的(小数位后跟(任意数量的逗号,然后是十进制数))。
我不知道你用的是什么符号
[({(([0-9]+,)*[0-9]+)})]
但它肯定不会匹配空集,也不会匹配逗号后带有空格的任何内容。
关于java - 集合表示法的特定 Java 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15594856/