将含有字母的字符串转换成整数的方法:
package lianxi;
import java.io.Console;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class toInt{
public static void main(String[] args) {
// TODO Auto-generated method stub
toInt to=new toInt();
String a="123abc4";
String b="ab12345";
System.out.println(to.reint(a)+"隔开"+to.reint(b));
}
public int reint(String a) {
String reg="[^0-9]";//定义正则表达式即:0-9的所有数
//Pattern调用静态方法compile返回Pattern实例。
//也可以说是将正则表达式定义为编译规则
Pattern pattern=Pattern.compile(reg);
//此处代表是通过编译规则筛选字符串a里的所有数字
Matcher matcher=pattern.matcher(a);
//去掉所有的空格和空串
Integer c=Integer.parseInt(matcher.replaceAll("").trim());
return c;//将最终得到的 整数返回前台
}
}
上面的方法在数字在9位以下时候适合
多于9位可以先将字符串变成字符数组,然后用character.isDIgit()判断并重新拼串(stringbuffer)
网友评论