She*_*hef 83
if(str.matches(".*\\d.*")){
// contains a number
} else{
// does not contain a number
}
Run Code Online (Sandbox Code Playgroud)
以前建议的解决方案,但不起作用,但由于@ Eng.Fouad的请求/建议而退回.
String strWithNumber = "This string has a 1 number";
String strWithoutNumber = "This string does not have a number";
System.out.println(strWithNumber.contains("\d"));
System.out.println(strWithoutNumber.contains("\d"));
Run Code Online (Sandbox Code Playgroud)
String strWithNumber = "This string has a 1 number";
if(strWithNumber.matches(".*\\d.*")){
System.out.println("'"+strWithNumber+"' contains digit");
} else{
System.out.println("'"+strWithNumber+"' does not contain a digit");
}
String strWithoutNumber = "This string does not have a number";
if(strWithoutNumber.matches(".*\\d.*")){
System.out.println("'"+strWithoutNumber+"' contains digit");
} else{
System.out.println("'"+strWithoutNumber+"' does not contain a digit");
}
Run Code Online (Sandbox Code Playgroud)
产量
'This string has a 1 number' contains digit
'This string does not have a number' does not contain a digit
Run Code Online (Sandbox Code Playgroud)
mre*_*mre 30
使用循环 -
public static boolean containsDigit(final String aString)
{
if (aString != null && !aString.isEmpty())
{
for (char c : aString.toCharArray())
{
if (Character.isDigit(c))
{
return true;
}
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
使用流 -
public static boolean containsDigit(final String aString)
{
return aString != null && !aString.isEmpty() &&
aString.chars().anyMatch(Character::isDigit);
}
Run Code Online (Sandbox Code Playgroud)
谢夫的答案不适合我.看起来他正在使用RegEx String.contains().如果你想使用RegEx,请使用:
String strWithNumber = "This string has a 1 number";
String strWithoutNumber = "This string has a number";
System.out.println(strWithNumber.matches(".*\\d.*"));
System.out.println(strWithoutNumber.matches(".*\\d.*"));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
135113 次 |
| 最近记录: |