js,replace() 和 正则表达式(regular expression)

repalce()   只能替换字符串中的匹配到的第一个字符或者字符串

正则表达式   替换多个字符或者字符串

注意:一些数字型的字符串使用replace() 时要确保是字符串,而不是数字。

转换方法: str = num.toString();    str = num + "";

定义正则表达式:

  • var regExp = new RegExp(pattern, attributes);  

  • var regExp = /pattern/attributes;

示例:

1   var resExp1 = str.replace(/blue/gi, "red");
3   var resExp2 = /blue|house|car/gi;
5   var resExp3 = new RegExp(/blue|house3|car3/,"gi");
7   var isFlag = resExp3.test(string); // return true or false

常用修饰符

  •  i:  执行对大小写不敏感的匹配。(ignoreCase)
  • g:  执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。(global)
  • m:   执行多行匹配(如果 pattern 是正则表达式,而不是字符串,则必须省略该参数)。(multiline)

RegExp 对象方法

  • exec:  检索字符串中指定的值。返回找到的值,并确定其位置。
  • test:    检索字符串中指定的值。返回 true 或 false。

自定义 replaceAll() 方法:

1 function replaceAll(str, find, replace) {
2   return str.replace(new RegExp(find, 'g'), replace);
3 }

其他方法:

1 str.split(search).join(replacement);

相关链接:

stackoverflow

w3cschool

常用的正则表达式全面总结

正则表达式大全

常用正则表达式

posted @ 2015-12-15 10:45  提佰萬  阅读(539)  评论(0编辑  收藏  举报