开发者社区> 问答> 正文

正则表达式问题

已解决

正则表达式问题
求大神帮我看看这个正则是什么意思?匹配什么样的数据
"/^(-)?[0-9]+(.[0-9]+)?$/"
麻烦给个例子,什么样的数据是对的,什么样是错的

展开
收起
51干警网 2016-02-15 09:47:17 2431 0
1 条回答
写回答
取消 提交回答
  • 阿里云论坛版主,QQ 1978638808
    采纳回答

    这个是匹配整数或小数的。
    1.可以带负号(-)的整数,不可以带正好(+):
    -123, -0, 0, 1, 23, 232323232323

    2.带小数点的小数
    0.1, 12.34等
    只带小数点不带小数部分是不可以的,比如1.是不可以的。

    解析:
    ^(-)?[0-9]+(.[0-9]+)?$

    1. ^表示从一个表达式的开头部分开始匹配,最后的$表示一直匹配到表达式的最后。
    2. (-)?表示允许带负号
    3. [0-9]+表示至少一个0-9的数字。
    4. (.[0-9]+)表示小数点和后面的数字式绑定的,如果有小数点,则必须至少有一个数字在后面。
      5.(.[0-9]+)?表示小数部分可有可无。
    2019-07-17 18:28:39
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载