【发布时间】:2014-09-07 18:24:06
【问题描述】:
我得到的字符串包含货币 ($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。我只需要正则表达式代码而不是 java 代码。
我正在使用http://www.regexplanet.com/advanced/java/index.html 进行测试。
【问题讨论】:
-
您的输入和预期输出是什么?