js RegExp对象学习结合字符串replace方法使用

[size=large][b]replace方法和RegExp结合使用[/b][/size]
  
var str = "L.Rain";
var regExpTest = '' ;
regExpTest = str.replace(/[R|n]/g , "*");

var regExp = new RegExp("[R|n]","gi") ;
regExpTest = str.replace(regExp,'*') ;
//上面两种方式的效果一样


RegExp对象的构造函数可以带一个或两个参数,[color=blue]第一个参数是描述需要进行匹配的模式字符串[/color],如果有第二个参数,这个参数则指定了额外的处理指令。
最基本的正则表达式就是普通的字符串 [color=red]g[/color] :


var reCat = new RegExp("cat");
var reCat = /cat/;
var reCat = new RegExp("cat","g");
//第一和第二种 只拼配第一次的cat
//第三种 则匹配所有的cat


[color=red]第二个参数表示要搜索字符串出现的全部的"cat"[/color],而不是找到第一个匹配后就停止。
如果还要模式不区分大小写,可以给第二个参数添加字符 [color=red]i[/color] :


var reCat = new RegExp("cat","gi");
var reCat = /cat/gi;


测试:

var sToMatch = "cat";
var reCat = /cat/gi;
alert( reCat.test(sToMatch) );


[size=large][b]RegExp对象涉及的方法:[/b][/size]

[b]RegExp.exec()[/b]:访问模式的每一次出现

var sToMatch = "a bat , a Cat , a fAt ,a baT , a faT cat";
var reAt = /at/;
var arrMatches = reAt.exec(sToMatch);
alert(arrMatches.length); // output 1

[b]RegExp.test()[/b]:方法用于检测一个字符串是否匹配某个模式 [b]常用于判断是否符合正则表达式[/b] [color=red]返回true 或 false [/color]

var str = "ExpTest";
var patt1 = new RegExp("ExpTest");
var result = patt1.test(str);

alert(result);//返回true 说明匹配到


[b]String.match()[/b]:String 对象的 match() 方法

var sToMatch = "a bat , a Cat , a fAt ,a baT , a faT cat";
var reAt = /at/gi;
var arrMatches = sToMatch.match(reAt);
alert( arrMatches.length ); // output 6


[b]String.search()[/b]:此方法与 indexOf()方法类似,[color=red]但是它使用的是一个RegExp对象[/color],而并非一个字符串,[color=red]返回的是字符串中一个匹配的位置[/color]。
[color=red](g)全局匹配在此方法不起作用。[/color]

[b]String.replace()[/b]:可以用另外一个字符串(第二个参数) 来代替某一个字符串或者一个匹配的[color=red]模式字符串 (第一个参数)[/color]的所有匹配。
[b]String.split()[/b]:参数可以为一个字符串也可以为 一个匹配的模式字符串 RegExp对象。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值