1.整数或者小数:/^((0{1}|[1-9]{1}[0-9]+)\.{1}[0-9]+|[1-9]{1}[0-9]*|0)$/

分析:分类讨论,如果是小数,则有两种形式   0.111对应的是 0{1}\.[0-9]+     100.1111对应的是 [1-9]{1}[0-9]+\.[0-9]+  所以整体小数的正则表达式就是:

(0{1}|[1-9]{1}[0-9]+)\.{1}[0-9]+)  整数的正则表达式就是 [1-9]{1}[0-9]+,再加上0这种可能性 所以合并起来就是   /^((0{1}|[1-9]{1}[0-9]+)\.{1}[0-9]+|[1-9]{1}[0-9]+|0)$/

2.只能输入数字/^[0-9]+$/

分析:这个很简单,^表示开头,$表示结束,所以这里的意思就是以数字开头,以数字结束,+表示至少要一个数字

3.只能输入n位的数字 /^\d{n}$/。

分析:\d等价于[0-9]匹配数字,{n}表示匹配的个数是n个

4.只能输入至少n位的数字:/^\d{n,}$/。

分析:{n,}匹配大于等于n个

5.只能输入m~n位的数字:。/^\d{m,n}$/

分析:{m,n}匹配m个~n个(包括m和n)

6.只能输入零和非零开头的数字:/^(0|[1-9][0-9]*)$/。

分析:m|n匹配m或者n  所以这里匹配0或者[1-9][0-9]*  [1-9]匹配非0数字,[0-9]*匹配任意个数的数字

7.只能输入有两位小数的正实数:/^(0|[1-9][0-9]+).[0-9]{2}$/。

分析:小数只有两种形式,0.12 和111.12类型 分类讨论,小数点之前可以敲定是0|[1-9][0-9]+  小数点之后是[0-9]{2}

8.只能输入非零的正整数:/^\+?[1-9][0-9]*$/。

分析:+?表示0个或者一个

9.只能输入非零的负整数:/^\-[1-9][0-9]*$/。

分析:^\-匹配开头为-

10.只能输入长度为3的字符:/^.{3}$/。

分析:.表示除了换行和行结束符外的任何字符

js 常用正则表达式分析详解的更多相关文章

  1. EditPlus正则表达式中英文详解(附常用事例操作)

    http://www.cnblogs.com/JustinYoung/articles/editplus_regular_expression.html EditPlus正则表达式中英文详解 \t T ...

  2. maven常用插件配置详解

    常用插件配置详解Java代码    <!-- 全局属性配置 --> <properties> <project.build.name>tools</proje ...

  3. js调试工具Console命令详解

    这篇文章主要介绍了js调试工具Console命令详解,需要的朋友可以参考下   一.显示信息的命令 复制代码 代码如下: < !DOCTYPE html> < html> &l ...

  4. js 常用正则表达式表单验证代码

    正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下:测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一 ...

  5. 【第六课】Nginx常用配置下详解

    目录 Nginx常用配置下详解 1.Nginx虚拟主机 2.部署wordpress开源博客 3.部署discuz开源论坛 4.域名重定向 5.Nginx用户认证 6.Nginx访问日志配置 7.Ngi ...

  6. Javascript常用的设计模式详解

    Javascript常用的设计模式详解 阅读目录 一:理解工厂模式 二:理解单体模式 三:理解模块模式 四:理解代理模式 五:理解职责链模式 六:命令模式的理解: 七:模板方法模式 八:理解javas ...

  7. JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解

    二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...

  8. Memcache的使用和协议分析详解

    Memcache的使用和协议分析详解 作者:heiyeluren博客:http://blog.csdn.NET/heiyeshuwu时间:2006-11-12关键字:PHP Memcache Linu ...

  9. ExtJs常用布局--layout详解(含实例)

    序言: 笔者用的ExtJs版本:ext-3.2.0 ExtJs常见的布局方式有:border.form.absolute.column.accordion.table.fit.card.anchor ...

随机推荐

  1. C++ map排序(按照value值排序)_glp_hit_新浪博客

    C++ map排序(按照value值排序)_glp_hit_新浪博客     C++ map排序(按照value值排序)    (2012-07-12 14:19:51)    转载▼    标签:  ...

  2. Oculus Rift DK2 安装所需电脑配置

    系统支持:眼下使用的SDK0.4支持windows7,windows8,windows8.1.Mac(10.8,10.9): 硬件配置:官方给的标准配置为2.0+GHz以上CPU.2GB内存.兼容Di ...

  3. PHP - 点击更换头像

    原理: 操作流程: 首先点击头像图片,弹出选择窗口,选中其中一个则窗口推出头像更换. 效果: 主页面代码: <tr> <td>头像:</td> <td> ...

  4. 集合简单总结 ArrayList、List、Hashtable、Dictionary

      ============================ 集合综述 ============================== 1.什么是泛型: 泛型就是限制了操作类型,意思如下:       ...

  5. 【linux】U-BOOT与linux kernel通信: struct tag

      欢迎转载,转载时需保留作者信息. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http://b ...

  6. Notepad++中如何设置自动换行以及行宽

    view-->word wrap; setting->preference-->vertical edge settings; Notepad++中如何设置自动换行以及行宽 http ...

  7. Eclipse用法和技巧二十一:工程的展示途径

    用eclipse阅读代码的时候,有时候代码会变成如图一所示的样子,有时候可能是图二的样子.为什么有时候是图一有时候是图二,笔者也不是很清楚.不过怎么手动设置成图一图二,就是接下来要讲的东西. 1    ...

  8. C++中实现 time_t, tm 相互转换

    time_t -> tm: localtime tm -> time_t: mktime time_t curTime; time(&curTime); dwCurTime = c ...

  9. 柔性数组-读《深度探索C++对象模型》有感

    最近在看<深度探索C++对象模型>,对于Struct的用法中,发现有一些地方值得我们借鉴的地方,特此和大家分享一下,此间内容包含了网上搜集的一些资料,同时感谢提供这些信息的作者. 原文如下 ...

  10. Hbiernate关联排序问题

    使用场景: 假设有两张表请求信息.账户表,它们之间是一对多的关系.对应的java类分别为Sfcx_RequestInfo和Sfcx_Zhxx.Sfcx_RequestInfo有一个Set属性 sfcx ...