日期:2014-05-19 浏览次数:20776 次
System.out.println("0.12a0.12b".replaceAll("[a-z]", ""));
System.out.println("0.12a0.12b".replaceAll("[0-9]", "").replaceAll("\\.", ""));
------解决方案--------------------
也可以这样!
System.out.println("0.12a0.12b".replaceAll("[a-z]", ""));
System.out.println("0.12a0.12b".replaceAll("[^a-z]", ""));
------解决方案--------------------
把每个字节都拿出来判断ascii码也可以来区分
------解决方案--------------------
我刚才也写了一个小例子,不过没有正则表达式来的简单.
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
String number = ".0123456789";
String str = "0.12abc1.1";
char[] chars = str.toCharArray();
String numberPart = "";
String stringPart = "";
for(int i = 0; i < chars.length; i++) {
char c = chars[i];
if(number.indexOf(String.valueOf(c)) >= 0) {
numberPart += c;
} else {
stringPart += c;
}
}
System.out.println("===NumberPart===" + numberPart);
System.out.println("===stringPart===" + stringPart);
}
}