【发布时间】:2015-03-02 11:28:29
【问题描述】:
假设有三个字符串:
String s1 = "6A";
String s2 = "14T";
String s3 = "S32";
我需要提取数值(即 6,14 和 32)和字符(A、T 和 S)。
如果第一个字符始终是数字,则此代码将起作用:
int num = Integer.parseInt(s1.substring(0,1));
但是,这不适用于s2 和s3。
【问题讨论】:
-
例如,您可以使用
s1.replaceAll("\\D+","");从字符串中删除所有非数字。 -
考虑像
String.replaceAll()(docs) 在解析值之前从每个字符串中去除所有非数字字符。 -
这个问题之前已经在这里回答过:stackoverflow.com/questions/4030928/…