正则表达式-匹配正数

好久没碰正则了,今天同事给我演示了一个效果,我想到了他想表达的是需要一个可以匹配小数或者整数的正则,所以就分析着写了一下,测试如下。

  • 可以小数,可以整数(记得test括号中的数字格式是:字符型
    var reg=/^(0|[1-9][0-9]*)(\.\d+)?$/;
    console.log(reg.test('10'));
    console.log(reg.test('1000.0'));
    console.log(reg.test('9972'));
    console.log(reg.test('09'));  //false
    console.log(reg.test('0'));
    console.log(reg.test('0.1'));
    console.log(reg.test('0.'));  // false
  • 分析:正数由两部分组成:整数和小数,
    • 先分析整数由0或者1~9开头[0-9]结尾。
    • 小数部分出现的次数是0次或者1次,带小数点后面必须有数字。
    • 以上,做个记录,我看了在线正则表达式的写法^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$是有点重复的,所以就自己整理了下,大家测试下,欢迎提建议。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容