正则表达式

对象:
内置对象:Array Function Date Math String Number RegExp Boolean ...
宿主对象:DOM BOM
自定义对象
------------------
RegExp:正则对象 (Regular Expression)
由普通字符和特殊字符构成的文字模式,该文字模式是用来检测当前字符串是否符合你的这套文字模式
是一种强大的字符串匹配工具,如输入验证等场景正则表达式

一 定义正则对象
var reg=new RegExp("正则表达式","修饰符");---构造函数语法
var reg=/正则表达式/修饰符;---直接量语法函数

二 修饰符
i 不区分大小写
g 全局匹配
/[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/
三 正则表达式的构成
1 元字符
\w:匹配数字字母下划线
\W:匹配非数字字母下划线
\d:匹配数字
\D:匹配非数字
\s:匹配空白字符
\S:匹配非空白字符
. :匹配换行和行结束符之外的任意字符
^ :匹配字符串开始
$ :匹配字符串的结束
\n:匹配换行符工具

2 方括号:用于查找某个范围内的字符
[]:匹配[]中罗列的单个字符
[abc]
[\u4e00-\u9fa5]
[a-z]
[A-Z]
[0-9]<===>\d
[a-z0-9_]<===>\w /\w/i /[a-z0-9_]/i new RegExp("[a-z0-9_]","i")
[^]:匹配除了[]当中罗列的字符觉得的单个字符 [^abc] [^a-c]对象

3 限定符(量词):用来描述字符出现的次数
? :匹配0个或1个
+ :匹配1个或多个
{n}:匹配n个 /\d{5}/ /[0-9]{5}/
{m,n}:匹配至少m个可是不能超过n个 /\d{6,10}/
{m,}:匹配至少m个 + <===> {1,}字符串

4 分组和选择
() :分组 abcabcabc (abc){3}
| :选择 aba abb aab bab aaa bbb... (a|b){3} string

aabbbb aaaaaa bbbbbb bbaabb ... ((aa)|(bb)){3}io

6-18个字符构成,能够使用字母数字下划线,可是必须以字母开头
{6,18} \w ^[a-z]
/^[a-zA-Z]\w{5,17}$/ /^[a-z]\w{5,17}$/itest

手机号:
1 3/5/7/8
/^1[3578]\d{9}$/email

email:
sakjdakjd @ zhcfdh . com
\w+ @ [a-z]+ [.]或者\. (com)
/^\w+@[a-z]+\.(com)$/i构造函数

------------------------------------------

四 经常使用正则表达式的String对象的方法

String.search(reg):检测与正则表达式相匹配的值,若是找到返回匹配的位置不然返回-1

String.match(reg):找到一个或多个正则表达式的匹配,返回的是一个集合

String.replace(reg):替换与正则表达式匹配的子字符串

正则表达式在匹配的时候有一个特性:贪婪

五 RegExp对象的方法RegExp.test(string):用于对某个字符串进行检测,若是符合正则表达式的一个匹配结果则返回true,不然就返回false只要字符串当中有一部分知足正则的话就返回true,因此在书写正则的时候必需要加上(^$)

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息