我知道从字符串中删除前导零的方法:
'000100'.replace(/^0+/, '')
Run Code Online (Sandbox Code Playgroud)
但是,如果是类似浮点的字符串(例如“00100.2300”或“00100”),如何从中删除所有多余的零?
'00100.2300' => '100.23'
'00100' => '100'
'00100.0023' => '100.0023'
'100.00' => '100.' or '100' will better
'-100.002300' => '-100.0023'
'0.50' => '0.5'
Run Code Online (Sandbox Code Playgroud)
假设字符串:
Number.MAX_SAFE_INTEGER用于过滤额外零的函数可能相对简单并且步骤也更多。
正则表达式会更简单。
正则表达式:
^0+(?!\.)|(?:\.|(\..*?))0+$
Run Code Online (Sandbox Code Playgroud)
分解:
^0+(?!\.)匹配不满足小数点的前导零|或者(?:非捕获组的开始
\.匹配小数点|或者(\..*?)捕获数字前面的小数点)NCG 结束0*$匹配尾随零JS代码:
^0+(?!\.)|(?:\.|(\..*?))0+$
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3092 次 |
| 最近记录: |