我正在尝试从长字符串中提取与金钱相关的价值。我可以使用以下格式匹配(?:cad|[$]|usd)\s*\d+?
$1000
cad 1000
usd 1000
(\.\d+)
为可选数字添加帐户,但它不起作用。test1 = '今天是 23 岁,我会在今天 7 点之前付给你 10,000.78 美元'
期望 = 10,000.78 美元
提前致谢。
您可以编写一个替换|
来匹配这两种格式并使用空白边界来防止部分匹配。
为了匹配钱,你可以使用字符类[\d,.]+
来重复匹配数字、逗号或点,如果你知道钱总是在预期的格式中并且永远不会是例如$,,
(?<!\S)(?:(?:cad|[$]|usd) ?[\d,.]+|[\d.,]+(?:cad|[$]|usd))(?!\S)
请参阅正则表达式 101 演示。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句