浅谈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 相关文章推荐
jQuery autocomplate 自扩展插件、自动完成示例代码
Mar 28 Javascript
javascript 日期时间 转换的方法
Feb 21 Javascript
jQueryMobile之Helloworld与页面切换的方法
Feb 04 Javascript
原生js实现移动开发轮播图、相册滑动特效
Apr 17 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
Jun 19 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
Dec 19 Javascript
jQuery实现的淡入淡出图片轮播效果示例
Aug 29 jQuery
JavaScript实现shuffle数组洗牌操作示例
Jan 03 Javascript
了解javascript中的Dom操作
May 27 Javascript
Angular8 Http拦截器简单使用教程
Aug 20 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
解决Vue + Echarts 使用markLine标线(precision精度问题)
Jul 20 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 应用程序的安全 -- 不能违反的四条安全规则
2006/11/26 PHP
兼容性比较好的PHP生成缩略图的代码
2011/01/12 PHP
php检测图片木马多进制编程实践
2013/04/11 PHP
phplot生成图片类用法详解
2015/01/06 PHP
基于GD2图形库的PHP生成图片缩略图类代码分享
2015/02/08 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
用jQuery打造TabPanel效果代码
2010/05/22 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
jQuery.query.js 取参数的两点问题分析
2012/08/06 Javascript
ajax的hide隐藏问题解决方法
2012/12/11 Javascript
JS数组的遍历方式for循环与for...in
2014/07/31 Javascript
js怎么判断flash swf文件是否加载完毕
2014/08/14 Javascript
Javascript Event(事件)的传播与冒泡
2017/01/23 Javascript
微信小程序page的生命周期和音频播放及监听实例详解
2017/04/07 Javascript
JS基于正则表达式实现的密码强度验证功能示例
2017/09/21 Javascript
jquery实现图片跟随鼠标的实例
2017/10/17 jQuery
vue 的keep-alive缓存功能的实现
2018/03/22 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
Python中的random.uniform()函数教程与实例解析
2019/03/02 Python
Django实现发送邮件功能
2019/07/18 Python
Python用来做Web开发的优势有哪些
2020/08/05 Python
Python: glob匹配文件的操作
2020/12/11 Python
Python Selenium库的基本使用教程
2021/01/04 Python
python实现三种随机请求头方式
2021/01/05 Python
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
巴西最大的巴士票务门户:Quero Passagem
2020/11/21 全球购物
毕业自荐书
2013/12/09 职场文书
婚礼证婚人证婚词
2014/01/08 职场文书
关于抽烟的检讨书
2014/02/25 职场文书
课堂教学改革实施方案
2014/03/17 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
学习十八大的心得体会
2014/09/12 职场文书
六五普法先进个人主要事迹材料
2015/11/03 职场文书
MySQL Router的安装部署
2021/04/24 MySQL
解决pycharm下载库时出现Failed to install package的问题
2021/09/04 Python