正则表达式是regular expression看来英文比中文要好理解多了就是检查表达式符
不符合规定正则表达式有一个功能十分强大而又十分复杂的对象RegExp在JavaScript1.2 版本以
上提供。
下面我们看看有关正则表达式的介绍
正则表达式对象用来规范一个规范的表达式(也就是表达式符不符合特定的要求比如是不是Email
地址格式等)它具有用来检查给出的字符串是否符合规则的属性和方法。
除此之外你用RegExp构造器建立的个别正则表达式对象的属性就已经预先定义好了正则表达式
对象的静态属性你可以随时使用它们。
核心对象
在JavaScript 1.2, NES 3.0以上版本提供。
在JavaScript 1.3以后版本增加了toSource方法。
建立方法
文字格式或RegExp构造器函数。
文字建立格式使用以下格式
/pattern/flags即/模式/标记
构造器函数方法使用方法如下
new RegExp("pattern"[, "flags"])即new RegExp("模式"[,"标记"])
参数
pattern(模式)
表示正则表达式的文本
flags(标记)
如果指定此项flags可以是下面值之一
g: global match(全定匹配)
i: ignore case(忽略大小写)
gi: both global match and ignore case(匹配所有可能的值也忽略大小写)
注意文本格式中的参数不要使用引号标记而构造器函数的参数则要使用引号标记。所以下面的
表达式建立同样的正则表达式
/ab+c/i
new RegExp("ab+c", "i")
描述
当使用构造函数的时候必须使用正常的字符串避开规则(在字符串中加入前导字符 )是必须的。
例如下面的两条语句是等价的
re = new RegExp("w+")
re = /w+/
下面的提供了在正则表达式中能够使用的完整对特殊字符的一个完整的列表和描述。
表1.3正则表达式中的特殊字符
字符
意义对于字符通常表示按字面意义指出接着的字符为特殊字符不作解释。
例如/b/匹配字符'b',通过在b 前面加一个反斜杠也就是//则该字符变成特殊字符表示
匹配一个单词的分界线。
或者
对于几个字符通常说明是特殊的指出紧接着的字符不是特殊的而应该按字面解释。
例如*是一个特殊字符匹配任意个字符(包括0个字符)例如/a*/意味匹配0个或多个a。