首页 > 代码库 > java中判断一个字符串是否“都为数字”和“是否包含数字”和“截取数字”

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.用正则表达式 

    public static boolean isNumeric(String str) {        Pattern pattern = Pattern.compile("[0-9]*");        return pattern.matcher(str).matches();    }

3.用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;    }

 

java中判断一个字符串是否“都为数字”和“是否包含数字”和“截取数字”