`

JS常用正规表达式

    博客分类:
  • 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+)?$

分享到:
评论

相关推荐

    正规表达式 Regex

    - 不同编程语言支持的正规表达式功能和语法有所不同,如D、Haskell、.NET、Java、ECMA (JavaScript)、Python、Ruby等均有各自独特的正规表达式风味。 #### 五、正规表达式的应用 - **文本处理**:例如,提取日志...

    正规表达式必知必会.PDF

    通过学习正规表达式的概念、语法和常用技巧,你可以更有效地处理文本数据,提高代码的效率和灵活性。"正规表达式必知必会"这本书很可能是针对这个主题的深入指南,它将帮助你系统地掌握正规表达式,并在实践中...

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

    JavaScript正则表达式是实现邮箱验证的常用方法。本文将详细介绍如何使用JavaScript正则表达式对邮箱进行验证,以及常见的邮箱验证正则表达式的写法和注意事项。 首先,邮箱的基本结构由本地部分、"@"符号和域名...

    Python-Pyregex是一个开源在线的Python正则表达式编辑器测试器

    正则表达式的基本结构和常用元字符包括: - **`.`**:匹配任意单个字符,除了换行符。 - **`^`**:匹配字符串的开始。 - **`$`**:匹配字符串的结束。 - **`\d`**:匹配数字,等价于`[0-9]`。 - **`\D`**:匹配非...

    正则表达式学习经验分析第1/2页

    正则表达式,也称作规则表达式、正规表示、正规表达式等,是一种字符串模式匹配工具,广泛应用于文本处理和数据提取的各个领域。正则表达式能够通过预定义的特殊字符集及语法来定义一种字符串的模式,从而快速找到...

    常用的JS,web开发有用哦

    ##### 1.31 正规表达式 - 使用正则表达式进行字符串匹配和验证。 ##### 1.32 取控件绝对位置 - 获取页面上元素的绝对坐标。 ##### 1.33 最小化, 最大化, 关闭 - 控制窗口的状态,如最小化、最大化和关闭。 ###...

    计算机专业保研/考研面试题(完整版)

    - **正规表达式**:理解正规表达式的定义及其在词法分析中的应用。 - **自动机理论**:掌握有限自动机的原理及其在词法分析器设计中的应用。 2. **语法分析**: - **上下文无关文法**:理解上下文无关文法的基本...

    JAVA程序员 从笨鸟到菜鸟.pdf

    虽然是一本以Java为主题的书籍,但作者也意识到了前端技术的重要性,并专章介绍了Html、CSS、Javascript等前端基础,并在后续章节中涉及了EL表达式、JSTL以及JSP自定义标签等内容。 8. 设计模式: 书籍最后部分...

    2022年云南计算机软件水平考试考试考前冲刺卷(1).docx

    解析:JavaScript是一种常用的客户端脚本语言,禁用脚本可以防止恶意脚本执行,提高浏览器的安全性。 6. 以下关于软件质量度量指标的叙述中,说法正确的是()。 答案:D.可用性与用户的操作效率和主观评价有关 ...

    EditPlus v3.10注册码

    - 强大的搜索与替换:支持正则表达式匹配模式,实现复杂条件下的精确替换。 - 多重撤销/重做:允许用户撤回多个步骤,避免误操作带来的损失。 - 拼写检查:内置拼写校验工具,有助于减少打字错误。 - 自定义...

    editplus--v3.31注册码

    - **宏记录与回放**:录制常用操作步骤为宏命令,提升工作效率。 - **内置 FTP 客户端**:直接编辑远程服务器上的文件,无需本地复制。 - **用户工具定义**:可根据个人需求定制编译、运行脚本等操作。 #### 六、...

    php从入门到精通第三版

    通过正规的教材学习,可以获得系统性的知识和结构化的学习路径。同时,为了帮助学习者更好地掌握PHP,可以通过在线论坛、博客、视频教程、开源项目等资源进行辅助学习。 6. 社区支持和网络资源 PHP拥有庞大的用户和...

Global site tag (gtag.js) - Google Analytics