浅谈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 相关文章推荐
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
Apr 13 Javascript
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
Sep 19 Javascript
jQuery之网页换肤实现代码
Apr 30 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
Jan 17 Javascript
分享Javascript中最常用的55个经典小技巧
Nov 29 Javascript
深入解析JavaScript中的数字对象与字符串对象
Oct 21 Javascript
用jmSlip编写移动端顶部日历选择控件
Oct 24 Javascript
Javascript中引用类型传递的知识点小结
Mar 06 Javascript
深入理解react-router@4.0 使用和源码解析
May 23 Javascript
Vue2.0 从零开始_环境搭建操作步骤
Jun 14 Javascript
什么是Vue.js框架 为什么选择它?
Oct 17 Javascript
Vue实现boradcast和dispatch的示例
Nov 13 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
Zend引擎的发展 [15]
2006/10/09 PHP
用PHP实现Ftp用户的在线管理的代码
2007/03/06 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
深入理解javascript动态插入技术
2013/11/12 Javascript
jQuery编写网页版2048小游戏
2017/01/06 Javascript
基于jQuery实现的Ajax 验证用户名唯一性实例代码
2017/06/28 jQuery
vue-cli单页应用改成多页应用配置详解
2017/07/14 Javascript
vue.js  父向子组件传参的实例代码
2017/10/29 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
基于Vue 撸一个指令实现拖拽功能
2019/10/09 Javascript
JS实现简单省市二级联动
2019/11/27 Javascript
原生JS实现微信通讯录
2020/06/18 Javascript
python strip()函数 介绍
2013/05/24 Python
python字符串排序方法
2014/08/29 Python
python实现批量修改文件名代码
2017/09/10 Python
windows下python和pip安装教程
2018/05/25 Python
如何基于python对接钉钉并获取access_token
2020/04/21 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
Desigual德国官网:在线购买原创服装
2018/03/27 全球购物
世界领先的艺术图书出版社:TASCHEN
2018/07/23 全球购物
微软巴西官方网站:Microsoft Brasil
2019/09/26 全球购物
JSF如何进行表格处理及取值
2012/08/06 面试题
幼儿园庆六一游园活动方案
2014/01/29 职场文书
诚信承诺书模板
2014/05/26 职场文书
维修工先进事迹
2014/05/29 职场文书
建筑专业毕业生求职信
2014/09/30 职场文书
繁星春水读书笔记
2015/06/30 职场文书
2015初中团支部工作总结
2015/07/21 职场文书
《活见鬼》教学反思
2016/02/24 职场文书
pytorch实现ResNet结构的实例代码
2021/05/17 Python
一篇文章带你掌握SQLite3基本用法
2022/06/14 数据库