如何只阅读一行开头的数字?
示例:
1件事
2和某事
3和其他东西
只读数字,即使它类似于542
答案 0 :(得分:0)
如果它始终采用number words
格式,那么您可以:
int number = Integer.parseInt(lineString.replace(/\D+/, '')); // This uses a regex to remove all letters
OR
int number = lineString.split(" ")[0]; // Splits string by spaces and gets the first token, which will be numbers
其中lineString
是您要解析的字符串,例如1 something
。
答案 1 :(得分:0)
int result = Integer.parseInt(mString.substring(0,1));
答案 2 :(得分:0)
没有正则表达式的简单方法:
private int readNum(String input){
String buffer = "";
char[] chars = input.toCharArray();
for(char c: chars){
if(Character.isDigit(c))
buffer = buffer + c;
else
break;
}
return Integer.parseInt(buffer);
}
答案 3 :(得分:0)
您可以使用方法'解析' NumberFormat类
try {
Log.i("TAG",((Number)NumberFormat.getInstance().parse("123efdsf4")).intValue()+"");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
此方法将解析String,直到找到char。