我得到的字符串包含货币($ 50,$ 4)或文本“未排列”。我需要提取数字,或者如果文本替换为0。
所以举个例子
$45 would give me 45
£55 would give me 55
not arranged gives 0 or nothing
44 would give 44
有人告诉我那.(.*[0-9])
可行。但前提是假定第一个字符是货币符号。如果我们省略该符号或添加额外的前导空格,它将无法正常工作。最重要的是,我不懂代码.(.*[0-9])
。有人可以解释一下吗?
当我尝试自己创建正则表达式时,我以为[0-9] *可以工作,但无效。我以为[0-9]代表一个数字,所以我想捕获所有我要使用[0-9] *的数字。但这不起作用。
我将如何用0替换文本“ notranged”。我只需要regexp代码而不是Java代码。
我正在使用http://www.regexplanet.com/advanced/java/index.html进行测试。
这样的事情(假设要测试的字符串称为subjectString
):
String theNumbers = null;
Pattern regex = Pattern.compile("\\d+");
Matcher regexMatcher = regex.matcher(subjectString);
if (regexMatcher.find()) {
theNumbers = regexMatcher.group();
}
else subjectString = "0";
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句