小弟最近学正则表达式,要匹配一个1~15的格式一“,”相隔的两个数字。
代码
public boolean checkingInput(String inputStr){
Pattern regPattern = Pattern.compile("^((1[0-5])|[1-9]),^((1[0-5])|[1-9])");
Matcher matcher = regPattern.matcher(inputStr);
return matcher.matches();
}
其中表达式的“^((1[0-5])|[1-9]), ” 是可以正常判断出“1~15,”的字符串了,但是把两个放在一起为什么就不行捏?
代码
public boolean checkingInput(String inputStr){
Pattern regPattern = Pattern.compile("^((1[0-5])|[1-9]),^((1[0-5])|[1-9])");
Matcher matcher = regPattern.matcher(inputStr);
return matcher.matches();
}
其中表达式的“^((1[0-5])|[1-9]), ” 是可以正常判断出“1~15,”的字符串了,但是把两个放在一起为什么就不行捏?
public static void main(String[] args) {
String reg = "(^1[0-5],1[0-5]$)|(^[1-9],1[0-5]$)|(^[1-9],[1-9]$)|(^1[0-5],[1-9]$)";
System.out.println("9,8".matches(reg));
System.out.println("11,8".matches(reg));
System.out.println("9,11".matches(reg));
System.out.println("11,11".matches(reg));
}