java中判断字符串中是否包含数字
·
在javascript中有一个方法isDigit()使用来判断一个字符串是否都是数字,在java的字符串处理方法中没有这样的方法,昨天在接口中用到了,顺便查了下,总结了下,下次用到,顺手拈来
// 判断一个字符串是否都为数字
public boolean isDigit(String strNum) {
return strNum.matches("[0-9]{1,}");
}
// 判断一个字符串是否都为数字
public boolean isDigit(String strNum) {
Pattern pattern = Pattern.compile("[0-9]{1,}");
Matcher matcher = pattern.matcher((CharSequence) strNum);
return matcher.matches();
}
//截取数字
public String getNumbers(String content) {
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(content);
while (matcher.find()) {
return matcher.group(0);
}
return "";
}
// 截取非数字
public String splitNotNumber(String content) {
Pattern pattern = Pattern.compile("\\D+");
Matcher matcher = pattern.matcher(content);
while (matcher.find()) {
return matcher.group(0);
}
return "";
}
// 判断一个字符串是否含有数字
public boolean HasDigit(String content) {
boolean flag = false;
Pattern p = Pattern.compile("^[-\\+]?[\\d]*$");
Matcher m = p.matcher(content);
if (m.matches()) {
flag = true;
}
return flag;
}
java中判断字符串是否为数字的四种方法 :
1.用JAVA自带的函数
public static boolean isNumeric(String str) {
for (int i = str.length(); --i >= 0;) {
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
2.可以使用lang3下的包下StringUtils类的方法isNumeric()
String str="1235456";
boolean flag =StringUtils.isNumeric(str);
3..用正则表达式
public static boolean isNumeric(String str) {
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
}
4.用ASCII码
public static boolean isNumeric(String str) {
for (int i = str.length(); --i >= 0;) {
int chr = str.charAt(i);
if (chr < 48 || chr > 57)
return false;
}
return true;
}
更多推荐
已为社区贡献3条内容
所有评论(0)