正则表达式通常指的是:使用单个字符串来描述或匹配符合某个句法规则的字符串搜索模式。
1.在JavaScript中。正则表达式常用对文本的搜索和匹配。这两个字符串方法 分别是: search() 和 replace()。
(1).search()方法:用于检索子符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回相匹配的子字符串的起始位
置(位置的起始位置为0,可以这样来理解:若开头第一个字符就相匹配,则返回0,以此类推)。若没有相匹配的文本,则会返回-1。
例1:search()方法使用正则表达式
var str="abcdefgh";
var reg=/def/i;
alert(str.search(reg)); //输出值为 3,即是想匹配的文本的起始位置是3
例2:search( )方法使用字符串
var str="abcdefg";
alert(str.search("def")); //输出值为3,返回的是相匹配的文本的起始位置
(2).replace( )方法:用于在字符串中用一些字符串替换另一些字符,或替换一个一个正则表达式匹配的子串。
例3:replace( )方法使用正则表达式
var url="http://www.google.com";
var str=/google/i;
alert(url.replace(str,"baidu")); //输出结果为:http://www.baidu.com
例4:replace( )方法使用字符串
var str="112233445566";
alert(str.replace("2233","0")); //输出结果为:110445566
2.正则表达式修饰符
i:表示不区分大小写; g:执行全局匹配; m:执行多行匹配;
3.正则表达式模式
方括号用于查找某个范围内的字符。
[abc]:查找方括号之间的任何字符; [^abc]:查找任何不在方括号之间的字符;
[0-9]:查找任何从0-9的数字; [a-z]:查找任何从小写a到小写z的字符;
[A-Z]:查找任何从大写A到大写Z的字符; [A-z]:查找任何从大写A到小写z的字符;
(red|blue|green):查找任何指定的选项;
4.正则表达式的元字符
元字符指的是拥有特殊含义的字符。
.:查找单个字符,除了换行和行结束符;
\w:查找单词字符; \W:查找非单词字符;
\d:查找数字; \D:查找非数字字符;
\s:查找空白字符; \S:查找非空白字符;
\b:匹配单词边界; \B:匹配非单词边界;
\0:查找null字符;
5.正则表达式的量词
n+:匹配任何包含至少一个n的字符串。
n*:匹配任何包含0个或多个n的字符串。
n?:匹配任何包含0个或1个n的字符串。
n{x}:匹配包含x个n的序列的字符串。
n{x , }:x为正整数时,匹配当n至少出现x次的字符串。
n{x,y}:匹配n至少出现x次,至多出现y次的字符串。
n$:匹配任何结尾为n的字符串。
^n:匹配任何开头为n的字符串。
?=n:匹配任何其后紧跟指定字符串n的字符串。
?!n:匹配任何其后没有紧接指定字符串n的字符串。
6.正则表达式的对象方法
compile:编译正则表达式;
exec:检索字符串中指定的值,返回找到的值,并确定其位置。
test:检索字符串中指定的值。返回true或false。