Я хотел бы проверить, если некоторые строки содержат только цифры и запятые, например:Проверьте, если строка содержит только цифры и запятая в Java
Строка: 12,312,312,3212,3111 должно быть ОК Строка: Fe , 32 423,4, dsd - Должно быть неверным.
Я хотел бы проверить, если некоторые строки содержат только цифры и запятые, например:Проверьте, если строка содержит только цифры и запятая в Java
Строка: 12,312,312,3212,3111 должно быть ОК Строка: Fe , 32 423,4, dsd - Должно быть неверным.
попробовать этот Regex ..
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
спасибо, он отлично работает –
Вы можете сделать это с StringTokenizer
или Вы можете сделать это с String.split()
String[] tokens= str.split(',');
for(String token: tokens) {
try {
Integer.parseInt(token);
} catch(Exception e) {
// String container non integers
}
}
Это будет делать трюк:
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
[Сумасшедший результат Google] (https://www.google.es/?client=firefox-b-ab#q=Check+if+String+contain+only+ числа + и + comma + in + Java & gfe_rd = cr) –
Вы можете использовать довольно основное регулярное выражение ... –
что вы пробовали до сих пор? –