如何判断一个string类型变量中的值是字母还是数字? String a="abc12bc";String b="12345";用什么方法可能判断a和b中的值存的是数字还是字母呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 取Ascii码判断循环 ,比对 不太明白你想要的结果,是判断全部是数字或字母还是判断包含有数字或字符的。我这给你是是判断时候是,一个正则表达式,一个是一般的方法。/** * java正则表达式来判断是否全是数字或字母(自己需要打开相应的匹配模式) * * @param str * 待检测字符串 * @return 若是返回true,否则返回false */ public static boolean isEmail(String email) { String regexp = "([0-9]+)"; //纯数字的匹配模式 //String regexp = "([a-zA-Z]+)"; //纯字母的匹配模式 PatternCompiler compiler = new Perl5Compiler(); PatternMatcher matcher = new Perl5Matcher(); Pattern pattern = null; // Initialization of compiler, matcher, and input omitted; try { pattern = compiler.compile(regexp); } catch (MalformedPatternException e) { return false; } if (matcher.matches(email, pattern)) return true; else return false; }/** * 是否只有数字或字母 * * @param str * 待检测字符串 * @return 若是返回true,否则返回false */ public static boolean isNumber(String str) { int i, j;// String strTemp = "0123456789"; //数字的匹配模式String strTemp = "abcdefghijklnmopqrstuvwxyzABCDEFGHIJKLNMOPQRSTUVWXYZ";//字符的匹配模式 if (str.equals("")) return true; for (i = 0; i < str.length(); i++) { j = strTemp.indexOf(str.charAt(i)); if (j == -1) {// 说明含有不是数字的字符 return false; } } return true; } Integer.parseInt();用扑获异常来判断NumberFormatException try{ int a = Integer.parseInt(str);}catch(NumberFormatException ex){ //不是数字}不适用于小数 // 使用正则表达式 // 要import java.util.regex.Pattern 和 java.util.regex.Matcher包 public static boolean isNumeric(String str) { Pattern pattern = Pattern.compile("[0-9]*"); Matcher isNum = pattern.matcher(str); if (!isNum.matches()) { return false; } else { return true; } } 先将String类型转换为char类型,Character类里面有现有的方法 求教JSP页面里删除按钮servlet的写法!!急求!!!! SSH项目插入产品信息失败,大家进来看下 清空UploadFile组件? jsp的困惑!!! 请问各位高手jsp如何调用ocx??急啊,在线等待 求助!!!在TOMCAT 5.5里如何配置servlets开发环境 在线求助一JAVA字符串问题,顶者有分啊!! java webservice soap12 一个奇怪的标记<c:if></c:if> 请大家帮忙,日文环境下,jsp页面如何进行多语言混排?急!!! 怎么让display:table这个标签表格中的内容变好看 如果判断图片格式是RGB还是CMYK?
循环 ,比对
* java正则表达式来判断是否全是数字或字母(自己需要打开相应的匹配模式)
*
* @param str
* 待检测字符串
* @return 若是返回true,否则返回false
*/
public static boolean isEmail(String email) {
String regexp = "([0-9]+)"; //纯数字的匹配模式
//String regexp = "([a-zA-Z]+)"; //纯字母的匹配模式
PatternCompiler compiler = new Perl5Compiler();
PatternMatcher matcher = new Perl5Matcher();
Pattern pattern = null; // Initialization of compiler, matcher, and input omitted;
try {
pattern = compiler.compile(regexp);
} catch (MalformedPatternException e) {
return false;
} if (matcher.matches(email, pattern))
return true;
else
return false;
}/**
* 是否只有数字或字母
*
* @param str
* 待检测字符串
* @return 若是返回true,否则返回false
*/
public static boolean isNumber(String str) {
int i, j;
// String strTemp = "0123456789"; //数字的匹配模式
String strTemp = "abcdefghijklnmopqrstuvwxyzABCDEFGHIJKLNMOPQRSTUVWXYZ";//字符的匹配模式
if (str.equals(""))
return true;
for (i = 0; i < str.length(); i++) {
j = strTemp.indexOf(str.charAt(i));
if (j == -1) {// 说明含有不是数字的字符
return false;
}
}
return true;
}
用扑获异常来判断NumberFormatException
{
int a = Integer.parseInt(str);
}
catch(NumberFormatException ex)
{
//不是数字
}
不适用于小数
// 要import java.util.regex.Pattern 和 java.util.regex.Matcher包
public static boolean isNumeric(String str)
{
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if (!isNum.matches()) {
return false;
} else {
return true;
}
}