我有一个从 json 数据获取的货币值范围,如下格式:$25,000-$35,000。它在 Chrome 和 Firefox 中显示为类似,但在 IE9 和 IE10 浏览器中显示为“$25,000.00-$35,000.00”。
想要删除 IE 浏览器上点后的那些零。我尝试过以下正则表达式:
s.replace(/(\.[0-9]*?)0+$/, "");
Run Code Online (Sandbox Code Playgroud)
但得到的输出如下:
"$25,000.00-$35,000"
Run Code Online (Sandbox Code Playgroud)
仅删除值的末尾。请让我知道正则表达式有什么问题?请帮我解决这个问题。
小智 5
根据是否存在,点后可能有除 0 之外的其他内容以及可以有多少个:
/\.(.*?[0]*)/g:删除点和所有后面的零/\.(.*?[0]{1,2})/g:删除点和后面的 1 或 2 个零/\.(.*?[0-9]*)/g或/\.(.*?\d*)/g:删除点和后面的数字/\.(.*?[0-9]{1,2})/g或/\.(.*?\d*)/g:删除点和后面的 1 或 2 个数字希望这可以帮助