求助一个数字输入的正则表达式

查看 192|回复 13
作者:zzlit   
需要满足
[ol]
  • 00 这种情况不出现输入的时候只展示 0
  • 01 这种情况展示 1
  • 0.1 可以出现
    现在写了一个正则如下,可以满足前两点,匹配上就后面的替换掉前面的,但是一加上小数点情况就多起来了,怎么写都不太对,求大佬帮帮忙。
    [/ol]
    const reg = /(?

    小数点, reg, const, 输入

  • littlepanic72   
    [-+]?\b[0-9]*\.?[0-9]+\b regexbuddy 从这个软件找出来的... 安利一个
    littlepanic72   
    @littlepanic72 好像不行...
    zhzy   
    其实写不明白的话, 可以考虑不用正则来做吧...
    dreasky   
    parseFloat 不就得了
    masellum   
    这需求不用正则也可以,写成显式的逻辑还更好维护,何必麻烦自己一定要上正则。
    Alias4ck   
    https://regex101.com/r/D1Y8eQ/1
    xiayushengfan   
    chatgpt
    Alias4ck   
    https://stackoverflow.com/questions/40557688/regex-replace-numbers-but-the-ones-starting-with-0-that-arent-float
    参考这个答案 把两边的引号改掉就行了
    xiayushengfan   
    ^(0|[1-9]\d*)(\.\d+)?$
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部