js 常用正则表达式分析详解
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 常用正则表达式分析详解的更多相关文章
- EditPlus正则表达式中英文详解(附常用事例操作)
http://www.cnblogs.com/JustinYoung/articles/editplus_regular_expression.html EditPlus正则表达式中英文详解 \t T ...
- maven常用插件配置详解
常用插件配置详解Java代码 <!-- 全局属性配置 --> <properties> <project.build.name>tools</proje ...
- js调试工具Console命令详解
这篇文章主要介绍了js调试工具Console命令详解,需要的朋友可以参考下 一.显示信息的命令 复制代码 代码如下: < !DOCTYPE html> < html> &l ...
- js 常用正则表达式表单验证代码
正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下:测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一 ...
- 【第六课】Nginx常用配置下详解
目录 Nginx常用配置下详解 1.Nginx虚拟主机 2.部署wordpress开源博客 3.部署discuz开源论坛 4.域名重定向 5.Nginx用户认证 6.Nginx访问日志配置 7.Ngi ...
- Javascript常用的设计模式详解
Javascript常用的设计模式详解 阅读目录 一:理解工厂模式 二:理解单体模式 三:理解模块模式 四:理解代理模式 五:理解职责链模式 六:命令模式的理解: 七:模板方法模式 八:理解javas ...
- JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解
二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...
- Memcache的使用和协议分析详解
Memcache的使用和协议分析详解 作者:heiyeluren博客:http://blog.csdn.NET/heiyeshuwu时间:2006-11-12关键字:PHP Memcache Linu ...
- ExtJs常用布局--layout详解(含实例)
序言: 笔者用的ExtJs版本:ext-3.2.0 ExtJs常见的布局方式有:border.form.absolute.column.accordion.table.fit.card.anchor ...
随机推荐
- BZOJ 2330: [SCOI2011]糖果( 差分约束 )
坑爹...要求最小值要转成最长路来做.... 小于关系要转化一下 , A < B -> A <= B - 1 ------------------------------------ ...
- docker学习笔记2:容器操作
一.列出主机上已经创建的容器 docker ps -a 二.创建交互式容器 命令: docker run -i -t ubuntu /bin/bash 其中-i -t 表示创建一个提供交互式shell ...
- linux系统文件属性-硬连接、软连接
1 硬链接概念 硬链接是指通过索引节点(Inode)来进行链接,在Linux(ext2,ext3)文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号(In ...
- 用ATL写简单的ActiveX控件 .
我正在做的项目需要用读卡器来读数据,由于系统是B/S架构的所以只能把读卡器的驱动封装成一个无界面的ActiveX控件,这样web页面中的js代码才能访问读卡器其实做起来也挺简单的,我用的环境是VS20 ...
- Hadoop在Windows下的安装配置
由于本人近期近期一段时间 都在学习Hadoop,接触了比較多的理论,可是想要深入的去学习Hadoop整个平台,那就必须实战的训练,首先第一步,当然是先搭建好一个Hadoop平台为先.可是比較坑爹的是. ...
- I/O操作技术
对I/O操作有三种可能的技术:可编程I/O.中断驱动I/O.直接内存存取(DMA) 可编程I/O 当处理器正在运行程序并遇到一个与I/O相关的指令时,它通过给对应的I/O模块发命令来运行这个指令 ...
- 数据绑定以及Container.DataItem几种方式与使用方法分析
灵活的运用数据绑定操作 绑定到简单属性:<%#UserName%> 绑定到集合:<asp:ListBox id="ListBox1" ...
- asp.net导出Excel类库
using System; using System.Collections.Generic; using System.Reflection; using System.Web; using Exc ...
- 《Swift Programming Language 》——Swift中怎样使用继承(Inheritance)
一个类能够继承(inherit)还有一个类的方法(methods),属性(property)和其他特性.当一个类继承其他类时,继承类叫子类(subclass),被继承类叫超类(或父类,supercla ...
- Scala中Stream的应用场景及事实上现原理
欢迎訪问我的独立博客:http://cuipengfei.me/blog/2014/10/23/scala-stream-application-scenario-and-how-its-implem ...