在JAVA中,怎么用正则表达式判断一个字符串是否是数字格式? 在JAVA中,判断一个字符串是否是数字(正数)格式,正则表达式怎么写 ?如"0" 是数字格式; "12" 是数字格式;"123.45" 是数字格式;"12a" 不是数字格式。"12a.33" 不是数字格式。谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static boolean isNumber(String str) { return str.matches("[\\d.]+"); } public static boolean isNumber(String str) { return str.matches("[\\d]+[.]?[\\d]+"); } public static void main(String[] args){ System.out.println("isNumber(\"0\"): " + isNumber("0")); System.out.println("isNumber(\"213\"): " + isNumber("213")); System.out.println("isNumber(\"124312a\"): " + isNumber("124312a")); System.out.println("isNumber(\"124312a.13\"): " + isNumber("124312a.13")); System.out.println("isNumber(\"12.431.213\"): " + isNumber("12.431.213")); System.out.println("isNumber(\"124312.13\"): " + isNumber("124312.13")); }output:isNumber("0"): falseisNumber("213"): trueisNumber("124312a"): falseisNumber("124312a.13"): falseisNumber("12.431.213"): falseisNumber("124312.13"): true //import java.util.regex.*;public static boolean isData(String str) { String regex="^(-|\\+)?\\d+\\.?\\d*$"; String regex1="^(-|\\+)?0+\\d+\\.?\\d*$"; Pattern ptn=Pattern.compile(regex); Matcher mat=ptn.matcher(str); boolean result=mat.matches(); System.out.println(">>> first result = "+result); if (result) { ptn=Pattern.compile(regex1); mat=ptn.matcher(str); System.out.println(">>> second result = "+mat.matches()); result=!mat.matches(); } mat=null; ptn=null; System.out.println(str+" is data ? "+result); return result; } import java.util.regex.*;Pattern p=null; //正则表达式Matcher m=null; //操作的字符串boolean b;p = Pattern.compile("[\d]*[.]?[\d]*"); m = p.matcher("baaaaab"); b = m.matches("124312.13"); b=true; b=m.matches("124312a"); b=false; 这段异常什么意思? 抽象类跟接口 高手进!!!!! 堆栈类的实现 JSP的调用文件问题 从一道SCJP 试题来看你对继承和多态的理解程度? 很简单的问题,不要笑 那位大哥告诉我java 控制台有啥用? 一个排序问题,感觉找不到规律啊 我是搞C++的!现在想搞JAVA!于是想问: JDK, JSDK ,JRE ,它们是搞什么作用的,难道它没有像C++那样有集成环境吗,还有.......(内容) 关于java 培训 请大家介绍几个好一点的培训机构. servlet中本地文件路径问题
return str.matches("[\\d.]+");
}
return str.matches("[\\d]+[.]?[\\d]+");
} public static void main(String[] args){
System.out.println("isNumber(\"0\"): " + isNumber("0"));
System.out.println("isNumber(\"213\"): " + isNumber("213"));
System.out.println("isNumber(\"124312a\"): " + isNumber("124312a"));
System.out.println("isNumber(\"124312a.13\"): " + isNumber("124312a.13"));
System.out.println("isNumber(\"12.431.213\"): " + isNumber("12.431.213"));
System.out.println("isNumber(\"124312.13\"): " + isNumber("124312.13"));
}output:
isNumber("0"): false
isNumber("213"): true
isNumber("124312a"): false
isNumber("124312a.13"): false
isNumber("12.431.213"): false
isNumber("124312.13"): true
//import java.util.regex.*;
public static boolean isData(String str)
{
String regex="^(-|\\+)?\\d+\\.?\\d*$";
String regex1="^(-|\\+)?0+\\d+\\.?\\d*$";
Pattern ptn=Pattern.compile(regex);
Matcher mat=ptn.matcher(str);
boolean result=mat.matches();
System.out.println(">>> first result = "+result);
if (result)
{
ptn=Pattern.compile(regex1);
mat=ptn.matcher(str);
System.out.println(">>> second result = "+mat.matches());
result=!mat.matches();
}
mat=null;
ptn=null;
System.out.println(str+" is data ? "+result);
return result;
}
boolean b;p = Pattern.compile("[\d]*[.]?[\d]*"); m = p.matcher("baaaaab"); b = m.matches("124312.13"); b=true;
b=m.matches("124312a"); b=false;