javascript中的replace方法
1.replace
调用方法str.replace(regexp|substr, newSubStr|function)
regexp,正则表达式
substr,需要被替换的字符串
newSubStr,用于替换的字符串
function,一个用于创建新字符串的函数
1.1 当第一个参数为字符串的时候,只替换第一个匹配的项
var text = 'cat,bat,sat,fat'
var result = text.replace('at','ut') // cut,bat,sat,fat
1.2 替换字符串可以插入下面的特殊变量名
$$ 插入一个$
$& 插入匹配的子串
$` 插入当前匹配的子串左边的内容
$' 插入当前匹配的子串右边的内容
$n 假设第一个参数是RegExp对象,并且n是个小于100的非负整数,那么插入的是第n个括号匹配的字符串
var text = 'cat,bat,sat,fat'
text.replace('at','$`') // cc,bat,sat,fat
text.replace('at','$\'') // c,bat,sat,fat,bat,sat,fat
text.replace(/(a)(t)/,'$1') // ca,bat,sat,fat
text.replace(/(a)(t)/,'$2') // ct,bat,sat,fat
1.3 第二个参数为函数
如果第二个参数为函数,如果匹配成功,函数就会执行,函数的返回值作为替换字符串。$特殊变量名将不能使用。如果第一参数是正则表达式,并且是全局模式,那么这个方法会被调用多次,每次匹配都会被调用
函数参数如下:
match 匹配的字符串,对应$&
p1,p2……,如果第一个参数是RegExp对象,则代表第n个括号匹配的字符串,对应$1,$2……
offset 匹配的字符串在原字符串中的偏移量
string 被匹配的原字符串
var text = 'cat,bat,sat,fat'
var result = text.replace(/(a)(t)/g,function(...args){console.log(args)
})
console.log('result:', result)// 输出结果
// ["at", "a", "t", 1, "cat,bat,sat,fat"]
// ["at", "a", "t", 5, "cat,bat,sat,fat"]
// ["at", "a", "t", 9, "cat,bat,sat,fat"]
// ["at", "a", "t", 13, "cat,bat,sat,fat"]
// result: cundefined,bundefined,sundefined,fundefined 因为我没有返回值,所以是undefined
转载于:https://www.cnblogs.com/gg1234/p/9282313.html
javascript中的replace方法相关推荐
- 深入理解 JavaScript 中的 replace 方法
2019独角兽企业重金招聘Python工程师标准>>> 字符串替换字符串 1 'I am loser!' .replace( 'loser' , 'hero' ) //I am he ...
- 彻底搞懂javascript中的replace函数
javascript这门语言一直就像一位带着面纱的美女,总是看不清,摸不透,一直专注服务器端,也从来没有特别重视过,直到最近几年,javascript越来越重要,越来越通用.最近和前端走的比较近,借此 ...
- 来一轮带注释的demo,彻底搞懂javascript中的replace函数
javascript这门语言一直就像一位带着面纱的美女,总是看不清,摸不透,一直专注服务器端,也从来没有特别重视过,直到最近几年,javascript越来越重要,越来越通用.最近和前端走的比较近,借此 ...
- Javascript中二进制数据处理方法
Javascript中二进制数据处理方法 转载于:https://www.cnblogs.com/motadou/archive/2012/02/19/2358514.html
- JS中的Replace方法
最近查一个bug,原因是JS中的Replace方法造成的,当将一个字符串中有处需要替换时,一般会用到JS中的Replace方法,Replace方法的第一个参数如果是传的字符串,只会替换第一处.代码如下 ...
- Hive中的replace方法
Hive中的replace方法 Hive本身并没有replace方法,但是提供了两个方法可以实现replace功能 translate regexp_replace translate例子 使用空字符 ...
- php中使用confirm,如何使用JavaScript中的confirm()方法
confirm方法的使用:通过给元素设置confirm函数来创建一个带有确认和取消按钮的提示框,当点击确认时返回true,取消时返回false 今天将讲解JavaScript中confirm() 方法 ...
- JavaScript 中的forEach()方法
JavaScript 中的forEach方法 一.forEach()的定义和用法? 1.第一个是数组的每一项值(必选) 2.第二个是数组下标(可选) 3.第三个是原数组(可选) 4.forEach() ...
- JavaScript中的valueOf方法详解
Object.prototype.valueOf() valueOf() 方法返回指定对象的原始值. 语法 object.valueOf() 返回值 返回值为该对象的原始值. 描述 JavaScrip ...
最新文章
- 12篇文章带你进入NLP领域,掌握核心知识
- CSS布局基础之二认识Viewport
- 【深度学习】人人都能看得懂的卷积神经网络——入门篇
- Andriod: 在xml布局中使用自定义属性
- intellij出现Error assembling JAR: invalid entry size
- 6、mysql中字段
- python 矩阵获取行数_4个最佳项目创意的代码片段和示例,旨在为Python和机器学习构建出色的简历!...
- delphi 获取桌面路径
- Docker学习总结(55)——Google和Facebook为什么不用Docker?
- Java本质论之关于Java栈与堆的思考
- DirectShow Filter 开发典型例子分析 ——字幕叠加 (FilterTitleOverlay)1
- webservice的wsdl文件怎么生成
- 敏捷教练如何辅导发布计划的制定之开展行动
- 计算机使用hdmi需要设置方法,如何在计算机显示器上切换HDMI
- 英式英语和美式英语的差异1-用词
- MySQL微专业_网易微专业Java开发工程师
- 谁知道qq会员怎么退款呢
- 测试硬盘软件hd不能结束进程,终于解决了HD TUNE以及所有其他硬盘检测工具都不能使用的情况。。...
- 微信小程序全栈开发实践 第三章 微信小程序开发常用的API介绍及使用 -- 3.6 网络接口简介(六)关于Page页面隐藏代码执行及Promise对象catch处理的补充
- strcpy与strncpy的实现