如何获取数字? 比如说我有这么一个字符串:dlsafl12346那么请问我使用什么方法可以获取字符串中的数字? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class MixedStringParser { static String parseNumber(String mixed) { byte[] data = mixed.getBytes(); StringBuffer sb = new StringBuffer(); for (int i=0; i<data.length; i++) { if (data[i]>0x2F && data[i]<0x3A) { sb.append((char)data[i]); } } return sb.toString(); } public static void main(String[] args) { if (args.length != 1) { System.out.println("usage: java MixedStringParser <mixed number>"); } String s = parseNumber(args[0]); System.out.println(s); System.out.println(Integer.parseInt(s)); }} str.replaceAll("\\D+"," ").split(" ");第一个可能是空的,判断下既可 public class test{ public static void main(String[] args){ String str="dlsafl12346"; System.out.println(str.replaceAll("\\D+"," ")); }}; public class MixedStringParser { static String parseNumber(String mixed) { byte[] data = mixed.getBytes(); StringBuffer sb = new StringBuffer(); for (int i=0; i<data.length; i++) { if (data[i]>0x2F && data[i]<0x3A) { sb.append((char)data[i]); } } return sb.toString(); } public static void main(String[] args) { if (args.length != 1) { System.out.println("usage: java MixedStringParser <mixed number>"); } String s; long useRegex = System.nanoTime(); s = args[0].replaceAll("\\D", ""); useRegex = System.nanoTime() - useRegex; System.out.println(s); long useChar = System.nanoTime(); s = parseNumber(args[0]); useChar = System.nanoTime() - useChar; System.out.println(s); System.out.println("useChar:\t" + useChar); System.out.println("useRegex:\t" + useRegex); }}结果:---------- java ----------1234512345useChar: 343899useRegex: 3010718Normal Termination输出完成(耗费 0 秒)。 Process的Runtime.getRuntime().exec执行linux,cd命令问题 用java如何计算两个日期之间年数、季度数、月数? 请教linux下使用svn命令的几个问题 按钮拖拽问题 为什么我编译Java applet时总是出现如下内容呢? Unicode的问题,急!! 怎样把string类型的转换成date类型 WinXP 与JDK是否有冲突 过两天可能要用JAVA~开发一个什么工程项目管理的什么软件~具体怎么样我还不知道~ 如何把applet窗口里的Java Applet Window去掉? 求JDK官方中文文档 关于JXL读取时间的问题
public class MixedStringParser {
static String parseNumber(String mixed) {
byte[] data = mixed.getBytes();
StringBuffer sb = new StringBuffer();
for (int i=0; i<data.length; i++) {
if (data[i]>0x2F && data[i]<0x3A) {
sb.append((char)data[i]);
}
} return sb.toString();
} public static void main(String[] args) {
if (args.length != 1) {
System.out.println("usage: java MixedStringParser <mixed number>");
}
String s = parseNumber(args[0]);
System.out.println(s);
System.out.println(Integer.parseInt(s));
}
}
{
public static void main(String[] args){
String str="dlsafl12346";
System.out.println(str.replaceAll("\\D+"," "));
}
};
static String parseNumber(String mixed) {
byte[] data = mixed.getBytes();
StringBuffer sb = new StringBuffer();
for (int i=0; i<data.length; i++) {
if (data[i]>0x2F && data[i]<0x3A) {
sb.append((char)data[i]);
}
} return sb.toString();
} public static void main(String[] args) {
if (args.length != 1) {
System.out.println("usage: java MixedStringParser <mixed number>");
} String s; long useRegex = System.nanoTime();
s = args[0].replaceAll("\\D", "");
useRegex = System.nanoTime() - useRegex; System.out.println(s); long useChar = System.nanoTime();
s = parseNumber(args[0]);
useChar = System.nanoTime() - useChar; System.out.println(s); System.out.println("useChar:\t" + useChar);
System.out.println("useRegex:\t" + useRegex);
}
}结果:
---------- java ----------
12345
12345
useChar: 343899
useRegex: 3010718
Normal Termination
输出完成(耗费 0 秒)。