`
nenty
  • 浏览: 108877 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JS一些正规表达式,方便大家学习

阅读更多

^   匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a" 
$   匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A" 
*   匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa 
+   匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa 
?   匹配前面元字符0次或1次,/ba*/将匹配b,ba 
(x)   匹配x保存x在名为$1...$9的变量中 
x|y   匹配x或y 
{n}   精确匹配n次 
{n,}   匹配n次以上 
{n,m}   匹配n-m次 
[xyz]   字符集(character set),匹配这个集合中的任一一个字符(或元字符) 
[^xyz]   不匹配这个集合中的任何一个字符 
[\b]   匹配一个退格符
\b   匹配一个单词的边界 
\B   匹配一个单词的非边界
\cX   这儿,X是一个控制符,/\cM/匹配Ctrl-M 
\d   匹配一个字数字符,/\d/ = /[0-9]/ 
\D   匹配一个非字数字符,/\D/ = /[^0-9]/ 
\n   匹配一个换行符 
\r   匹配一个回车符 
\s   匹配一个空白字符,包括\n,\r,\f,\t,\v等 
\S   匹配一个非空白字符,等于/[^\n\f\r\t\v]/ 
\t   匹配一个制表符 
\v   匹配一个重直制表符 
\w   匹配一个可以组成单词的字符

一些常用的正则表达式
"^\d+$"  //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$"  //正整数
"^((-\d+)|(0+))$"  //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$"  //负整数
"^-?\d+$"    //整数
"^\d+(\.\d+)?$"  //非负浮点数(正浮点数 + 0)
"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数
"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"  //非正浮点数(负浮点数 + 0)
"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数
"^(-?\d+)(\.\d+)?$"  //浮点数
"^[A-Za-z]+$"  //由26个英文字母组成的字符串
"^[A-Z]+$"  //由26个英文字母的大写组成的字符串
"^[a-z]+$"  //由26个英文字母的小写组成的字符串
"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串
"^\w+$"  //由数字、26个英文字母或者下划线组成的字符串
"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"    //email地址
"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  //url
/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日
/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年
"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$" //Emil
"(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?" //电话号码
"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$" //IP地址



匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$

下面是常用的正则表达式——
验证数字:^[0-9]*$
验证n位的数字:^d{n}$
验证至少n位数字:^d{n,}$
验证m-n位的数字:^d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^+?[1-9][0-9]*$
验证非零的负整数:^-[1-9][0-9]*$
验证非负整数(正整数 + 0) ^d+$
验证非正整数(负整数 + 0) ^((-d+)|(0+))$
验证长度为3的字符:^.{3}$
验证由26个英文字母组成的字符串:^[A-Za-z]+$
验证由26个大写英文字母组成的字符串:^[A-Z]+$
验证由26个小写英文字母组成的字符串:^[a-z]+$
验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
验证由数字、26个英文字母或者下划线组成的字符串:^w+$
验证用户密码:^[a-zA-Z]w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
验证是否含有 ^%&',;=?$" 等字符:[^%&',;=?$x22]+
验证汉字:^[u4e00-u9fa5],{0,}$
验证Email地址:^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$
验证InternetURL:^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
验证电话号码:^((d{3,4})|d{3,4}-)?d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
验证身份证号(15位或18位数字):^d{15}|d{18}$
验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正确格式为:01、09和1、31。
整数:^-?d+$
非负浮点数(正浮点数 + 0):^d+(.d+)?$
正浮点数 ^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数 + 0) ^((-d+(.d+)?)|(0+(.0+)?))$
负浮点数 ^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数 ^(-?d+)(.d+)?$
分享到:
评论
1 楼 kingterrors 2010-11-12  
   

相关推荐

    一些 正则表达式 正规表达式 JS

    一些正规表达式 正则表达式 比如: 匹配特定数字: ^[1-9]\d*$ //匹配正整数 ^-[1-9]\d*$ //匹配负整数 ^-?[1-9]\d*$ //匹配整数 ^[1-9]\d*|0$ //匹配非负整数(正整数 + 0) ^-[1-9]\d*|0$ //匹配非正整数...

    JS正规表达式大全

    正则表达式中的符号,字符串,.选择,分组和引用 ,属性 等。

    JSVerbalExpressions, JavaScript 正规表达式 简化.zip

    JSVerbalExpressions, JavaScript 正规表达式 简化 VerbalExpressions v0.3.0 JavaScript 正规表达式 轻松实现VerbalExpressions是一个JavaScript库,帮助构建困难的正规表达式 。如何启动浏览器中的&lt;scri

    javascript正规表达式

    Java 兴趣小组(正规表达式)感觉蛮全的。。想要的就拿走吧。。。大家一起努力

    regexpbuilderjs, 使用链接方法创建 正规表达式.zip

    regexpbuilderjs, 使用链接方法创建 正规表达式 RegExpBuilderRegExpBuilder将 正规表达式 集成到编程语言中,从而使它们易于阅读和维护。 使用链式方法和变量( 如数组或者字符串) 创建 正规表达式 。示例下面是使用...

    正则表达式工具:JGsoft RegexBuddy v3.4.2 零售版(无需要注册激活)

    RegexBuddy 使用 RegexBuddy 可以创建规范的正规表达式。该软件可以编译由其它软件编写的复杂的正规表达式。使用纯英文模块代替标准的 Regex 语法。在样本行和文件上测试任何规范的表达式,防止在实际数据上发生...

    JGsoft.RegexBuddy.v3.4.2

    RegexBuddy 使用 RegexBuddy 可以创建规范的正规表达式。该软件可以编译由其它软件编写的复杂的正规表达式。使用纯英文模块代替标准的 Regex 语法。在样本行和文件上测试任何规范的表达式,防止在实际数据上发生...

    compose-regexp.js:在JavaScript中构建和组成可维护的正则表达式

    compose-regexp.js 用JavaScript构建和编写可维护的正则表达式。 正则表达式不能正确对待正则语法。 正规的语法/语言形式主义全都与。 但是RegExps被设计为ed和grep等。 使用RegExp文字无法从较小的抽象模式构建大型...

    日常收集JS邮箱验证正则表达式

    中划线:中划线域名就是米农口中说的扁担域名了,扁担域名由于输入比较麻烦,看起来也比较不正规,是没有多大的价值,目前投资的人是比较少的。按照DNS的标准,域名是不允许有下划线的。 下划线:一些人在注册用户名的...

    使用JS中的exec&#40;&#41;方法构造正则表达式验证

    正则表达式,又称正规表示法、常规表示法。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本...

    用正则获取指定路径文件的名称

    其中主要是涉及到”\”在javascript中的特殊字符,是不是要用到正规表达式 [removed] var m=”D:\图片\丐帮.jpg” //求解 [removed] 希望能获取的值为”丐帮” 代码如下:[removed] var s =”D:\\图片\\丐帮.jpg”...

    theemberexpress:前端 Ember js 应用

    正规快车 这是正则快递的前端应用。 它与许多服务交互,为所有不同的语言提供正则表达式测试工具。 设置 您将需要在您的计算机上正确安装以下东西。 (带有 NPM)和 安装 git clone ...

    身份证验证HTML源码

    判断身份证的方法比使用正则表达式更加准确详细请看 js中的 checkidcard.js 判断省份证的 js function checkIsChinese(str){ if (str.length || str.length &gt; 15){ return "姓名长度不正确"; } var ret=true...

Global site tag (gtag.js) - Google Analytics