检查 Java 中的字符串是否只包含数字和逗号

Check if String contain only numbers and comma in Java

我想检查一些字符串是否只包含数字和逗号,例如:

字符串:12,312,312,3212,3111应该可以 字符串:fe,32,423,4,dsd - 应该不正确。

您可以使用 StringTokenizer 或者您可以使用 String.split()

String[] tokens= str.split(',');
for(String token: tokens) { 
   try {
     Integer.parseInt(token);
   } catch(Exception e) {
       // String container non integers
   }
}

试试这个正则表达式..

  String regex = "[0-9, /,]+";

// Negative test cases, should all be "false"
System.out.println("1234,234,345a".matches(regex)); //incorrect, So False will be print
     // positive test cases, should all be "true"
  System.out.println("1234,234,34".matches(regex)); //Correct, So True will be print

Demo Here

这样就可以了:

if (!(Pattern.compile("[^0-9,]").matcher(test).find())) {
    //the string only contains numbers and commas
} else {
    //to do if there are invalid characters
}

只需确保导入 java.util.regex.Pattern