查找两个字符串之间的子串

时间:2014-10-12 22:38:17

标签: java string

我有一个字符串,如:
file = "UserTemplate324.txt"

我想提取" 324"。如果没有像Apache StringUtils这样的外部库,我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

假设你想要"点之前的数字":

String number = str.replaceAll(".*?(\\d+)\\..*", "$1");

这使用正则表达式来查找和捕获数字并用它们替换整个输入。

值得注意的是使用非贪婪量词来消耗最小前导输入(以便不消耗数字的前导部分)。

答案 1 :(得分:2)

如果要排除非数字字符:

String number = file.replaceAll("\\D+", "");

\\D+表示一系列一个或多个非数字(0-9)字符,您可以用""替换任何此类系列,即没有任何内容,只留下数字。