【发布时间】:2015-07-07 23:23:26
【问题描述】:
我有一个可以输入字符串的文本字段。
但我需要使用该字符串返回一个整数。
我知道如何将字符串转换为整数,但是如何将字符串中的任何字母和标点符号分开,以便只留下数字?
【问题讨论】:
-
首先你需要一些代码
标签: java
我有一个可以输入字符串的文本字段。
但我需要使用该字符串返回一个整数。
我知道如何将字符串转换为整数,但是如何将字符串中的任何字母和标点符号分开,以便只留下数字?
【问题讨论】:
标签: java
匹配正则表达式。 0-9
之前已经给出了示例。 How to extract numbers from a string and get an array of ints?
【讨论】:
您可以用正则表达式 ant 替换所有额外的符号,然后调用 Integer.valueOf()。
例如:
Integer.valueOf(src.replaceAll("[!0-9]",""));
【讨论】:
试试这个代码:
String str = "a1?2.33/4tyz.7!8x";
str = str.replaceAll("\\D", "");
现在str 将包含"1233478"
【讨论】:
您需要替换字符串中不需要的所有值,然后将其余的值解析为整数:
String userInput = "Number 42 is the best";
userInput = userInput.replaceAll("[^\\d]", '');
return Integer.parseInt(test); //returns '42'
有一篇类似的帖子告诉你如何做到这一点here
【讨论】: