public class Test {public static final String REGEXP_PATTERN = "^[0-9\\*TSPx\\.\\|\\(\\)\\[\\]\\{\\}~,\\\\]+$";
public static void main(String[] args) {
String name = "[[[[[[[[[[";
if (!name.matches(REGEXP_PATTERN)) {
System.out.println("contains invalid characters. ");
} else {
System.out.println("Pass");
}
}}‘((((((((’, ‘[[[[[[[[’, ‘{{{{{{{{’, ‘()()()()’, ‘[][][][]’, ‘{}{}{}{}’在我的正则基础上修改 以上的字符不能通过验证
2 回答

神不在的星期二
TA贡献1963条经验 获得超6个赞
为什么非要用正则呢?可以换种方式更简单,用栈结构,很简单,如果成对,肯定有一对是对着呢!先入栈,在找到匹配的依次出栈,可以正确出栈,且栈中的数据位空时就匹配
添加回答
举报
0/150
提交
取消