java找出字符串中的数字
随便给你一个含有数字的字符串,比如:
String s="love23next234csdn3423javaeye";
那我们如何把其中的数字提取出来呢?
这里我给大家提供两种方法,第一是正则表达式,还有就是String类提供的方法。
1 String类提供的方法:(判断字符串中每个字符的ASCII码是否在48到57中)
import java.util.*;
public class get_StringNum {
public static void main(String[]args) {
Stringstr ="love23next234csdn3423javaeye";
str =str.trim();
Stringstr2 ="";
if (str !=null && !"".equals(str)) {
for (int i = 0;i <str.length();i++ ) {
if (str.charAt(i) >= 48 &&str.charAt(i) <= 57) {
str2 +=str.charAt(i);
}
}
}
System.out.println(str2);
}
}
output:
232343423
2 正则表达式(将所有非数字的字符用””空代替就只剩下数字了)
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {
public static void main(String[] args) {
String a="love23next234csdn3423javaeye";
String regEx="[^0-9]";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(a);
System.out.println( m.replaceAll("").trim());
}
}
output:
232343423
Pattern ,Matcher是java.util.regex软件包里的两个类,具体用法大家可以查阅一下api。
版权归原作者 一只有梦的网虫 所有, 如有侵权,请联系我们删除。