JavaScript正則表達式知识汇总
Js 正則表達式知识汇总
1、什么是RegExp?RegExp是正則表達式的缩写。RegExp 对象用于规定在文本中检索的内容。
2、定义RegExp:var +变量名=new RegExp();
3、RegExp 对象有 3 个方法:
1)test()检索字符串中的指定值,返回值是true或false.
var p1=new Reg("e"); document.write(Reg.test("welcome to China!"));
2)exec()
var p1=new Reg("e"); document.write(Reg.exec("welcome to China!"));
3) compile()
var p1=new Reg("e"); document.write(Reg.compile("welcome to China!"));
4、修饰符
1)i 运行对大写和小写不敏感的匹配
2)g 运行全局匹配
3)m 运行多行匹配
5、方括号(用于查找某个范围内的字符)
1)[abc] 查找方括号之间的不论什么字符
2)[^abc] 查找不论什么不在方括号之间的字符
3)[0-9] 查找不论什么0-9之间的数字
4)[a-z] 查找不论什么小写a-z之间的字符
5)[A-Z]查找不论什么大写A-Z之间的字符
6)[A-z] 查找不论什么大写A-小写z之间的字符
7)[adgk] 查找给定集合内的不论什么字符
8)[^adgk]查找给定集合外的不论什么字符
9)(red|biue|green)查找不论什么给定的选项
6、元字符
1)\w:查找单词字符
2)\W:查找非单词字符
3)\d:查找数字
4)\D:查找非数字字符
7、 量词
n+匹配不论什么包括至少一个 n 的字符串。
n*匹配不论什么包括零个或多个 n 的字符串。
n?匹配不论什么包括零个或一个 n 的字符串。
n{X}匹配包括 X 个 n 的序列的字符串。
n{X,Y}匹配包括 X 或 Y 个 n 的序列的字符串。
n{X,}匹配包括至少 X 个 n 的序列的字符串。
n$匹配不论什么结尾为 n 的字符串。
^n匹配不论什么开头为 n 的字符串。
?=n匹配不论什么其后紧接指定字符串 n 的字符串。
?!n匹配不论什么其后没有紧接指定字符串 n 的字符串。
【练习题1】推断输入身份证格式是否正确
<body> <label>请输入身份证号:</label> <input name="" type="text" id="shenfen"/> <input name="" type="submit" id="textfi" value="提交1" onclick="test()"/><!--提交button,触发函数--> </body> </html> <!--推断身份证是否输入正确--> <script> function test() { var reg=new RegExp(/^[0-9]{17}[0-9|X]$/);<!--正則表達式的格式:以/^开头,以$/结尾,数字、字母范围用中括号--> var text=document.getElementById("shenfen").value;<!--输入文本框的字符串的id跟文本框的id相应--> //推断地区是否合法(用if...else) if(reg.test(text)) { alert("输入正确") } else { alert("输入错误"); } } </script>
效果图:
【练习题2】推断输入的邮箱格式是否正确
<body> <label>请输入您的邮箱:</label> <input name="" type="text" id="youxiang"/> <input name="" type="submit" value="提交2" onclick="y()" /> </body> </html> <script> function y() { var yx=new RegExp(/^[0-9|A-z|_]{1,17}@[A-z|0-9]{1,5}.(com|cn|net|org|cc)$/); var shuru=document.getElementById("youxiang").value; <!--定义变量,调用的是整个function,,必须把变量写在function内--> if(yx.test(shuru))<!--test正則表達式的方法--> { alert("zhengque"); } else { alert("cuowu"); } } </script>
效果图:
相对来说。js中正則表達式是一个非常重要的点。非常多地方都须要配合正则才行,所以小伙伴一定要学好这块内容。
參考来源:
Js 正則表達式
http://www.lai18.com/content/351738.html
延伸阅读
4正則表達式推断是否存在中文和全角字符和推断包括中文字符串长度
6用正則表達式 动态创建/添加css style script 兼容IE firefox
7javascript 获取链接文件地址中第一个斜线内的正則表達式
24jQuery源代码分析-02正則表達式 RegExp 经常使用正則表達式
25javascript 进阶篇1 正則表達式,cookie管理,userData
27js正則表達式
32JavaScript高级程序设计(第3版)学习笔记12 js正則表達式
34有用的JS正則表達式(手机号码/IP正则/邮编正则/电话等)
38怎样使用Javascript正則表達式来格式化XML内容
40Jquery Validate 正則表達式有用验证代码大全
55正則表達式中特殊符号及正則表達式的几种方法总结(replace,test,search)
60js正則表達式中test,exec,match方法的差别说明
66JS使用replace()方法和正則表達式进行字符串的搜索与替换实例
72javascript正則表達式參数/g与/i及/gi的使用指南
85javascript正則表達式之search()使用方法实例
86javascript正則表達式使用replace()替换手机号的方法
89javascript使用正則表達式实现去掉空格之后的字符
91Javascript 正則表達式实现为数字加入千位分隔符
92【JavaScript】利用正則表達式检查输入框输入的是否为网址
95JavaScript正則表達式中的ignoreCase属性使用具体解释
96具体解释JavaScript正則表達式中的global属性的使用
97在JavaScript的正則表達式中使用exec()方法
JavaScript正則表達式知识汇总的更多相关文章
- javascript 正則表達式补充
定义 JavaScript种正則表達式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...
- javascript正則表達式 "\b"问题
preface 昨晚在看<javascript权威指南>后.看见作者自己封装一个兼容全部浏览器的山寨HTML5新API classLIst类.自己想了想认为自己也要去玩一下.可是能力还是有 ...
- DOM笔记(十):JavaScript正則表達式
一.RegExp ECMAScript通过RegExp类型类支持正則表達式,语法和Perl类似: var exp = /pattern/flags; patternb部分是不论什么简单的或复杂的正則表 ...
- JavaScript 正則表達式
一.简单介绍 1.什么是正則表達式 正則表達式本身就是一种语言,这在其他语言是通用的. 正則表達式(regular expression)描写叙述了一种字符串匹配的模式,能够用来检查一个串是否含有某种 ...
- 经常使用的正則表達式归纳—JavaScript正則表達式
来源:http://www.ido321.com/856.html 1.正则优先级 首先看一下正則表達式的优先级,下表从最高优先级到最低优先级列出各种正則表達式操作符的优先权顺序: 2.经常使用的正則 ...
- javascript——正則表達式
正則表達式(RegExp对象):主要用于表单验证 1.创建正則表達式: (1).var ret = /pattern/; pattern是内容.能够是正則表達式的内容,能够是字符或是其它的内容 (2) ...
- javascript正則表達式
定义一个正則表達式 能够用字面量 var regex = /xyz/; var regex = /xyz/i; 也能够用构造函数 var regex = new RegExp('xyz'); var ...
- 使用正則表達式的格式化与高亮显示json字符串
使用正則表達式的格式化与高亮显示json字符串 json字符串非常实用,有时候一些后台接口返回的信息是字符串格式的,可读性非常差,这个时候要是有个能够格式化并高亮显示json串的方法那就好多了,以下看 ...
- JavaScript使用正則表達式
2.0 简单介绍 正則表達式是能够用来查找与给定模式匹配的文本的搜索模式.比如,在上一章中,我们在一个较长的字符串中查找子字符串Cookbook: var testValue = "This ...
随机推荐
- net--技术栈(大图)
- 2014.04.17,转帖,关于FFT的结果为什么要除以N
http://www.chinavib.com/forum/viewthread.php?tid=23665&highlight= 关于这个问题,我看到的书好像都没有进行解释,这里我试着解释下 ...
- oracle init.ora常用配置详解
参考网上整理了重要的配置文件 db_name = "51cto" 一个数据库标识符,应与CREATE DATABASE 语句中指定的名称相对应. instance_name = ...
- ASP.NET Core-组件-后台任务:Hangfire
ylbtech-ASP.NET Core-组件-后台任务:Hangfire Hangfire作为一款高人气且容易上手的分布式后台执行服务,支持多种数据库.在.net core的环境中,由Core自带的 ...
- C语言整数类型在X86和X64下的字节大小
C声明 32位机器(X86) 64位机器(X64) char 1 1 short int 2 2 int 4 4 long int 4 8 long long int 8 8 char * 4 8 f ...
- javascript中常用数组方法详细讲解
javascript中数组常用方法总结 1.join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串.也可以指定可选的字符串在生成的字符串中来分隔 ...
- Android WebView回退
在使用webView时,会出现点击按钮让网页页面回到上一个页面的需求,这时可以使用goBack方法. 但是有的安卓用户会习惯点击手机自带的返回按钮,这时会直接关闭当前的activity,而不是网页页面 ...
- Win8 Windows Defender default behaviour
Problem Description ********************* Is it possible, to change the default behaviour when findi ...
- Ubuntu下快速配置Caffe
Caffe安装 实际上在windows上安装过多次caffe了,无论是BLVC版本的还是Microsoft版本的,ubuntu的按照也进行过,这段时间在自己笔记本上 又折腾了下caffe安装,发现其实 ...
- LeetCode Golang 9.回文数
9. 回文数 第一种办法 :itoa 转换为字符串进行处理: package main import ( "strconv" "fmt" ) //判断一个整数是 ...