我正在尝试验证表示范围列表的字符串,如打印对话框中所示,您可以在其中指明要打印的页面。例子:
我想任何不是"完成"无效,例如:
你可以猜到 - 我失败了;)
非常感谢任何帮助
答案 0 :(得分:4)
您可以尝试使用正则表达式(\d+(\-\d+)?(,(?!$))?)+
,例如:
String str = "1-1,12";
System.out.println(str.matches("(\\d+(\\-\\d+)?(,(?!$))?)+"));
其中:
\d+
1位或更多位
(\\-\\d+)?
跟随或不跟-
和1位或更多位
(,(?!$))?
并且所有上述内容都遵循或不是','(但不是字符串的最后一个位置 - (?!$)
是字符串结尾的负面预测)
+
说,以上所有内容必须至少出现一次