浅谈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 相关文章推荐
flexigrid 类似ext grid的JS表格代码
Jul 17 Javascript
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
May 28 Javascript
JS验证控制输入中英文字节长度(input、textarea等)具体实例
Jun 21 Javascript
js+div实现图片滚动效果代码
Feb 10 Javascript
javascript正则表达式基础知识入门
Apr 20 Javascript
JQuery datepicker 用法详解
Dec 25 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
Jun 23 Javascript
基于js实现checkbox批量选中操作
Nov 22 Javascript
vue-router 权限控制的示例代码
Sep 21 Javascript
JavaScript实现更换背景图片
Oct 18 Javascript
vue项目出现页面空白的解决方案
Oct 31 Javascript
解决Vue-cli3没有vue.config.js文件夹及配置vue项目域名的问题
Dec 04 Vue.js
使用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
用libtemplate实现静态网页生成
2006/10/09 PHP
PHP中ADODB类详解
2008/03/25 PHP
使用PHP的日期与时间函数技巧
2008/04/24 PHP
yii框架中的Url生产问题小结
2012/01/16 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
JS面向对象、prototype、call()、apply()
2009/05/14 Javascript
Web开发者必备的12款超赞jQuery插件
2010/12/03 Javascript
js 金额文本框实现代码
2012/02/14 Javascript
JS操作JSON要领详细总结
2013/08/25 Javascript
利用CSS3在Angular中实现动画
2016/01/15 Javascript
jQuery EasyUI Pagination实现分页的常用方法
2016/05/21 Javascript
很棒的js Tab选项卡切换效果
2016/08/30 Javascript
实例解析jQuery工具函数
2016/12/01 Javascript
微信小程序 template模板详解及实例
2017/02/21 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
Angular4学习之Angular CLI的安装与使用教程
2018/01/04 Javascript
基于vue中css预加载使用sass的配置方式详解
2018/03/13 Javascript
vue 实现全选全不选的示例代码
2018/03/29 Javascript
es6新特性之 class 基本用法解析
2018/05/05 Javascript
微信小程序使用canvas的画图操作示例
2019/01/18 Javascript
使用node搭建自动发图文微博机器人的方法
2019/03/22 Javascript
利用Python绘制MySQL数据图实现数据可视化
2015/03/30 Python
对比Python中__getattr__和 __getattribute__获取属性的用法
2016/06/21 Python
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
Python变量访问权限控制详解
2019/06/29 Python
Python 分布式缓存之Reids数据类型操作详解
2020/06/24 Python
ffmpeg+Python实现B站MP4格式音频与视频的合并示例代码
2020/10/21 Python
JSF面试题:如何管量web层中的Bean,用什么标签。如何通过jsp页面与Bean绑定在一起进行处理?
2012/10/05 面试题
制药工程专业毕业生推荐信
2013/12/24 职场文书
我们的节日端午节活动方案
2014/03/02 职场文书
人事科岗位职责范本
2014/03/02 职场文书
搞笑创意广告语
2014/03/17 职场文书
党员三严三实心得体会
2014/10/13 职场文书
Go 语言结构实例分析
2021/07/04 Golang