**
正则表达式:
RegExp 是javascript中的一个内置对象。
正则就是在常见的字符串检索或替换中表示如何来进行检索或替换的一种规则。正则表达式就是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串
新建正则表达式
方式一:直接量语法
var reg = /pattern/attributes
方式二:创建 RegExp 对象的语法
var reg = new RegExp(pattern, attributes);
参数说明:
参数 pattern (模式)是一个字符串,指定了正则表达式的模式或其他正则表达式。
参数 attributes(标记) 是一个可选的字符串,包含属性 “g”、”i” 和 “m”,分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。
两者区别在于:
1.采用直接量语法新建的正则表达式对象在代码编译时就会生成,是平常开发中常用的方式;
2.采用构造函数生成的正则对象要在代码运行时生成。
正则表达式使用:
正则对象的方法是指这样使用的: RegExp对象.方法(字符串)
字符串对象的方法是这样使用:字符串.方法(RegExp对象)
通常用于两种任务:
1、验证
用于验证时,通常需要在前后分别加上^和 ,以匹配整个待验证字符串;
2、搜索替换
搜索/替换时是否加上此限定则根据搜索的要求而定,此外,也有可能要在前后加上\b而不是^和$
具体的讲解:
正则表达式的写法是/…………/,中间是具体去匹配的内容
/…………/,最后面可以写(g,i,m)具体的意思是:(这里暂时就没有需要用到’/'的地方了,如果需要匹配的就是/就另外再说了)
3个重要的正则式命令
记住正则语法最好的办法就是记住这三样东西:Bracket(括号), caret(插入符号)和Dollars(美元符号)。
B 在正则表达式中有3种类型的括号
方括号 “[“和花括号“{“ 。
方括号"[“内是需要匹配的字符,花括号”{"内是指定匹配字符的数量。
圆括号“(“ 则是用来分组的。
C 插入符号 “^” 表示正则式的开始。
D 美元符号“$” 表示正则式的结束。
(译者注:上图有个错误,"()“应为”{}")
- 上面的这条正则式只能匹配a-z的英文字母,同样是在中括号中标明匹配范围。
- 花括号中则是标明匹配字符串的最小长度和最大长度。
- 最后为了让表达式更规则,分别在开头和结尾加上了插入符号"^“和美元符号”$"。