正则表达式很强大,必会。
每种语言正则表达式都类似,学会一种,其他的上手很快的、
JS正则表达式精彩博文:
1 J
2
3
4
5
JS高级替换功能
简单替换就不说了,比如这样一个字符串
<img type="inputline" style="display:inline;" src="/OJ/GetImage?type=inputline&num=2" /><img type="inputline" style="display:inline;" src="/OJ/GetImage?type=inputline&num=31" /><img type="inputline" style="display:inline;" src="/OJ/GetImage?type=inputline&num=1" />
注意到其中num=2,num=3,num=1我们如何替换这num=后面跟的数字呢?
var regex = /\<img type=['"]([a-zA-z]+)['"][^>]+num=(\d)[^>]* \/\>/g;//提取出<img ... />,写复杂了,可以把num=后面的数字也可以提取出来
var result = "";var data = "上面那串";var i=1;result = data.replace(regex, function(sMatch){ //sMatch就是每次提取出来的一个<img ... /> return sMatch.replace(/num=\d/, "num="+i++);});alert(result);