正则表达式
2018-04-28 12:08:08 22 举报
AI智能生成
正则表达式
作者其他创作
大纲/内容
1.什么是正则表达式?
定义:正则表达式(regular expression)是一个描述字符模式的对象。ECMAScript的RegExp类表示正则表达式,而String和RegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数。
作用:正则表达式主要用来验证客户端的输入数据。用户填写完表单单击按钮之后,表单就会被发送到服务器,在服务器端通常会用PHP、ASP.NET等服务器脚本对其进行进一步处理。因为客户端验证,可以节约大量的服务器端的系统资源,并且提供更好的用户体验。
2.如何创建正则表达式?
js里面提供了两种创建正则表达式的方式:
通过new操作符创建
new RegExp(string,[model])
第一个参数是字符串
第二个参数是可选模式修饰符
i
忽略大小写
g
全局匹配
m
多行匹配
采用字面量的方式
/string/[model
第一个参数是字符串
第二个参数是可选模式修饰符
i
忽略大小写
g
全局匹配
m
多行匹配
3.如何测试表达式?
正则表达式RegExp对象提供了两个方法:
test()
test()方法在字符串中查找是否存在指定的正则表达式并返回布尔值,如果存在则返回true,不存在则返回false
exec()
在字符串中执行匹配搜索,返回结果数组
特点:功能基本相似,用于测试字符串匹配
4.使用字符串的正则表达式方法
String对象中的正则表达式方法
match(pattern)
返回pattern中的子串或null
replace(pattern, replacement)
用replacement替换pattern
search(pattern)
返回字符串中pattern开始位置
split(pattern)
返回字符串按指定pattern拆分的数组
5.获取控制
正则表达式元字符是包含特殊含义的字符。它们有一些特殊功能,可以控制匹配模式的方式。反斜杠后的元字符将失去其特殊含义。
字符类:单个字符和数字
.
点符号表示匹配任意除了换行符外的字符
[a-z]
26个小写字母,任意一个都匹配,至少匹配一次
[A-Z]
26个大写字母,任意一个都匹配,至少匹配一次
[0-9]
数字0-9,任意一个都匹配,至少匹配一次
[a-z0-9]
26个小写字母,数字0-9任意一个都匹配
[a-zA-Z0-9]
26个小写字母,大写字母,数字0-9任意一个都匹配
[^a-z0-9]
匹配非26个小写字母,数字0-9,以外的任意一个字符
字符类:空白字符
字符类:锚字符
字符类:重复字符
x?
匹配前面0个或1个字符
x*
匹配前面0个,1个或多个字符
x+
匹配前面至少1个字符
(xyz)+
匹配前面至少一个组(xyz)
.?
匹配前面0个或1个任意字符
x{m,n}
匹配前面指定范围m到n个字符
x{m}
匹配前面m个字符
x{m,}
匹配前面指定m个及m个以上字符
字符类:替代字符
字符类:记录字符
0 条评论
下一页