浅谈javascript中replace()方法


Posted in Javascript onNovember 10, 2015

定义和用法
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
语法
stringObject.replace(regexp/substr,replacement)

浅谈javascript中replace()方法

返回值
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
说明
字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。

replacement 可以是字符串,也可以是函数。如果它是字符串,那么每个匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。

浅谈javascript中replace()方法

注意:ECMAScript v3 规定,replace() 方法的参数 replacement 可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将作为替换文本使用。该函数的第一个参数是匹配模式的字符串。接下来的参数是与模式中的子表达式匹配的字符串,可以有 0 个或多个这样的参数。接下来的参数是一个整数,声明了匹配在 stringObject 中出现的位置。最后一个参数是 stringObject 本身。
实例
例子 1
在本例中,我们将使用 "W3School" 替换字符串中的 "Microsoft":

<script type="text/javascript">

var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "3water"))

</script>

输出:Visit 3water!
例子 2
在本例中,我们将执行一次全局替换,每当 "Microsoft" 被找到,它就被替换为 "W3School":

<script type="text/javascript">

var str="Welcome to Microsoft! "
str=str + "We are proud to announce that Microsoft has "
str=str + "one of the largest Web Developers sites in the world."

document.write(str.replace(/Microsoft/g, "3water"))

</script>

输出:
Welcome to 3water! We are proud to announce that 3water

has one of the largest Web Developers sites in the world.
例子 3
您可以使用本例提供的代码来确保匹配字符串大写字符的正确:

text = "javascript Tutorial";
text.replace(/javascript/i, "JavaScript");

输出:javascript Tutorial
例子 4
在本例中,我们将把 "Doe, John" 转换为 "John Doe" 的形式:

name = "Doe, John";
name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");

输出:John Doe 
例子 5
在本例中,我们将把所有的花引号替换为直引号:

name = '"a", "b"';
name.replace(/"([^"]*)"/g, "'$1'");

输出:'a', 'b'
例子 6
在本例中,我们将把字符串中所有单词的首字母都转换为大写:

name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
 return word.substring(0,1).toUpperCase()+word.substring(1);}
 );

输出:Aaa Bbb Ccc

通过本文简单的学习,大家应该大概知道javascript中replace()方法,结合实例练习,希望对大家的学习有所帮助。

Javascript 相关文章推荐
共享自己写一个框架DreamScript
Jan 20 Javascript
比较全的JS checkbox全选、取消全选、删除功能代码
Dec 19 Javascript
JavaScript 图片预览效果 推荐
Dec 22 Javascript
jQuery代码优化 遍历篇
Nov 01 Javascript
DOM基础教程之使用DOM控制表格
Jan 20 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
Feb 13 Javascript
JS中取二维数组中最大值的方法汇总
Apr 17 Javascript
JavaScript程序中的流程控制语句用法总结
May 23 Javascript
在JavaScript中调用Java类和接口的方法
Sep 07 Javascript
jq给页面添加覆盖层遮罩的实例
Feb 16 Javascript
微信小程序WebSocket实现聊天对话功能
Jul 06 Javascript
Javascript实现时间倒计时功能
Nov 17 Javascript
使用jQuery获取data-的自定义属性
Nov 10 #Javascript
javascript适合移动端的日期时间拾取器
Nov 10 #Javascript
js图片轮播手动切换效果
Nov 10 #Javascript
JS截取与分割字符串常用技巧总结
Nov 10 #Javascript
jquery validate.js表单验证入门实例(附源码)
Nov 10 #Javascript
纯javascript响应式树形菜单效果
Nov 10 #Javascript
JavaScript中SetInterval与setTimeout的用法详解
Nov 10 #Javascript
You might like
php面向对象全攻略 (三)特殊的引用“$this”的使用
2009/09/30 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
PHP读取大文件末尾N行的高效方法推荐
2016/06/03 PHP
Yii列表定义与使用分页方法小结(3种方法)
2016/07/15 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
2019/12/02 PHP
用ADODB.Stream转换
2007/01/22 Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
2007/08/21 Javascript
ie6下png图片背景不透明的解决办法使用js实现
2013/01/11 Javascript
Table冻结表头示例代码
2013/08/20 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
2014/01/14 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
详解JavaScript 中 if / if...else...替换方式
2018/07/15 Javascript
python列表的常用操作方法小结
2016/05/21 Python
python+opencv识别图片中的圆形
2020/03/25 Python
对python读写文件去重、RE、set的使用详解
2018/12/11 Python
python 同时运行多个程序的实例
2019/01/07 Python
python 多个参数不为空校验方法
2019/02/14 Python
对python3.4 字符串转16进制的实例详解
2019/06/12 Python
详解Matplotlib绘图之属性设置
2019/08/23 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
matplotlib基础绘图命令之errorbar的使用
2020/08/13 Python
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
大学生求职简历的自我评价范文
2013/10/12 职场文书
信息服务专业毕业生求职信
2014/03/02 职场文书
玩手机检讨书1000字
2014/10/20 职场文书
群众路线教育实践活动学习心得体会
2014/10/30 职场文书
期末复习计划
2015/01/19 职场文书
叶问观后感
2015/06/15 职场文书
用Python编写简单的gRPC服务的详细过程
2021/07/04 Python
Python采集股票数据并制作可视化柱状图
2022/04/04 Python
德生2P3收音机开箱评测
2022/04/30 无线电