对于正则表达式来说相当新,并且在这种情况下我将价格存储在美分中,但需要使用等值的美元进行搜索。我试图编写一个模式替换器,将美分兑换成美元(基本上除以100)
例如:
2349 -> 23.49
18 -> .18
任何帮助将不胜感激
答案 0 :(得分:0)
正则表达式不是一个很好的工具。使用您选择的语言内置的数学将最终减少疼痛和咬牙切齿。
修改强>
如果您确实尝试匹配,则必须处理需要用零填充的单个数字值。如果您不必担心,您可以将美分与:
匹配(\d*)(\d\d)
然后用\ 1. \ 2
替换答案 1 :(得分:0)
应该有更简单的方法来做到这一点。
<强>正则表达式:强>
\ B(?\ d *?)(?\ d {1,2})\ B'/ P>
第一组是$,第二组是美分。
替换RegEx:
$ {美元} $ {百分之}
这将搜索字符串中的任何数字(任意长度)并将其拆分为$和美分。
<强>说明:强>
\ b:单词边界
\ d:数字
*? :懒惰选择(尽可能少的匹配)
{1,2}:匹配一个或两个字符。在懒惰之前会填充这个*?选择
():分组