大家好,欢迎来到IT知识分享网。
1. 什么是正则表达式
2. 创建正则表达式
一.什么是正则表达式
通俗的说就是验证字符串格式的一种表达式
正则表达式(regular expression)是一个描述字符模式的对象。ECMAScript的RegExp类表示正则表达式,而String和RegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数。
正则表达式主要用来验证客户端的输入数据。用户填写完表单单击按钮之后,表单就会被发送到服务器,在服务器端通常其进行进一步处理。因为客户端验证,可以节约大量的服务器端的系统资源,并且提供更好的用户体验。
二.创建正则表达式
创建正则表达式和创建字符串类似,创建正则表达式提供了两种方法,一种是采用new运算符,另一个是采用字面量方式。
两种创建方式
+ 方式一
var box = new RegExp(‘abc’); //第一个参数字符串,包含
+ 方式2
var regx=/abc/;
var regx=/\d+/;
三、测试正则表达式
RegExp对象包含两个方法:test()和exec(),功能基本相似,用于测试字符串匹配。test()方法在字符串中查找是否存在指定的正则表达式并返回布尔值,如果存在则返回true,不存在则返回false。exec()方法也用于在字符串中查找指定正则表达式,如果exec()方法执行成功,则返回包含该查找字符串的相关信息数组。如果执行失败,则返回null。
以下两个方法都是正则表达式对象的方法
1. exec(str),返回str中与表达式相匹配的第一个字符串,则返回包含该查找字符串的相关信息数组
另外,如果有多个合适的匹配,则第一次执行exec返回一个第一个匹配,此时继续执行exec,则依次返回第二个第三个匹配。例如:
2. test:test(str),判断字符串str是否匹配表达式,返回一个布尔值。
3. 字符串的正则表达式方法
除了test()和exec()方法,String对象也提供了4个使用正则表达式的方法。
String对象中的正则表达式方法
+ *使用match方法获取获取匹配数组*/
+ *使用search来查找匹配数据*
+ 使用replace替换数据
+ *使用split拆分成字符串数组*
四、常见的匹配规则
1. 字符类:单个字符和数字
使用点元字符*
2. 字符类:空白字符
3. 字符类:
都加上:相当于字符串整体要和正则表达式匹配
4. 字符类:重复字符
5. 分组匹配
*使用分组模式匹配*/
6. 贪婪匹配和非贪婪匹配
7. 匹配模式
i:代表不区分大小写匹配。
m:代表可以进行多行匹配。
主要作用:行末 行首的内容匹配
以上代码不能够匹配字符串”an”,尽管”an”后面已经换行了,但是并没有采用多行匹配,所以不是字符串行的结尾。
实例二:
以上代码可以匹配字符串”an”,因为采用了多行匹配。
实例三:
匹配失败,因为字符串的开头没有b字符。但是加上m修饰符之后:
实例四:
匹配到b,因为加了m修饰符之后,^已经表示行首,由于bbs在字符串第二行的行首,所以可以成功地匹配。
五.常用的正则
1. 检查邮政编码
2.检查文件压缩包
var str = ‘123.zip’; //\.表示匹配.,后面是一个选择
3.删除多余空格
4.删除首尾空格
5. 限制用户名是2-4个汉字
6. 将一个字符串中的一对html标记去掉
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/132367.html