您的位置:首页 > Web前端 > JavaScript

JavaScript 正则表达式的常用方法

2017-12-29 23:56 651 查看
正则表达式通常指的是:使用单个字符串来描述或匹配符合某个句法规则的字符串搜索模式。

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。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息