熟悉正则表达式的人可能会清楚这一点,但我不是。
示例(让我澄清一下:这是一个例子):
String onlynumbers = "1233444";
String numbersanddigits = "123344FF";
if ( onlynumbers IS_ONLY_NUMBERS())
return true;
if ( numbersanddigits IS_ONLY_NUMBERS())
return false;
连连呢?有没有办法在不导入库的情况下进行类似的检查?
答案 0 :(得分:4)
尝试使用String.matches("\\d+")
。如果该语句返回false,则字符串中的字符不是数字。 \d
表示字符必须是数字,+
表示每个字符必须是数字。
像这样:
String onlynumbers = "1233444";
String numbersanddigits = "123344FF";
System.out.println(onlynumbers.matches("\\d+")); // prints "true"
System.out.println(numbersanddigits.matches("\\d+")); // prints "false"
答案 1 :(得分:2)
您可以尝试:
if (onlynumbers.matches("[0-9]+")
return true;
if (numbersanddigits.matches("[0-9]+")
return false;
此外,作为快捷方式,您可以使用\\d+
代替[0-9]+
。选择哪一个只是一个选择问题。