String.prototype.replace--替换字符串
str.replace(regexp|substr, newSubStr|function)
API本身不改变原本的字符串,只是返回新的字符串
例子:用函数作为第二个参数
function replacer(match, p1, p2, p3, offset, string, namedCaptureGroup) {
console.log('match', match) // abc12345#$*%
console.log('p1, p2, p3', p1, p2, p3) // abc 12345 #$*%
console.log('string', string) // abc12345#$*%
// match 与 string 刚好相同,只是因为match都匹配上了
return [p1, p2, p3].join(' - ')
}
var newString = 'abc12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, replacer);
console.log(newString); // abc - 12345 - #$*%
函数的参数分别有:
1. match: 匹配的字串
2. p1,p2,p3...:例如:/(\a+)(\b+)/, p1 ---> \a+; p2 ---> \b+
3. offset: 匹配到的子字符串在原字符串中的偏移量;(比如:原字符串是“abcd”,匹配到的字符串是“bc”,那么这个参数将会是1)
4. 被匹配的原字符串
例子:用字符串做第二个参数
var re = /apples/gi;
var str = "Apples are round, and apples are juicy.";
var newstr = str.replace(re, "oranges");
// oranges are round, and oranges are juicy.
console.log(newstr);
例子:用特殊字符串做第二参数
"$$": "$"
"$&": 插入匹配的字串
"$`": 插入当前匹配的子串左边的内容。
"$'": 插入当前匹配的子串右边的内容。
"$n": $1, $2, $3
var re = /(\w+)\s(\w+)/;
var str = "John Smith";
var newstr = str.replace(re, "$2, $1");
// Smith, John
console.log(newstr);
String.prototype.replace--替换字符串的更多相关文章
- JavaScript中String.prototype.replace() 方法的使用
摘抄于:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/replace ...
- 【HANA系列】SAP HANA SQL REPLACE替换字符串
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL REP ...
- js replace替换字符串,同时替换多个方法
在实际开发中,经常会遇到替换字符串的情况,但是大多数情况都是用replace替换一种字符串,本文介绍了如何使用replace替换多种指定的字符串,同时支持可拓展增加字符串关键字. let conten ...
- EXCEL-REPLACE()替换字符串最后几位 删除字符串最后几位
字符串 0M5(烈焰红) 我要删除最后一个字符")" 公式=REPLACE(ASC(字符串),LEN(ASC(字符串)),1,"") 解释:=REPLAC ...
- string.prototype.replace 和正则表达式
字符串的replace方法是操作字符串的常用方法之一,但这个方法只有当与正则合并使用时,才能体现出它的强大之处. 语法:str.replace(regexp|substr, newsubStr|fun ...
- mysql中replace替换字符串更改方法
MySQL中update替换部分字符串replace的简单用法 近日,遇到了需要将部分字符串替换为另外的字符,平时用的最多的是直接update整个字段值,在这种情况下效率比较低,而且容易出错.其实my ...
- String.replaceAll()方法替换字符串中的反斜杠(\)
replaceAll()方法实际是采用正则表达式的规则去匹配的. 在regex中"\\"表示一个"\",在java中一个"\"也要用&quo ...
- JS使用replace替换字符串中的某段或某个字符
函数的介绍参考:http://www.w3school.com.cn/jsref/jsref_replace.asp 下列代码将Hello World!中的World替换为Jim <html&g ...
- String.prototype.replace
第一个参数是正则表达式 第二个参数是一个replacer 函数的入参如下: replacer(match,p1,p2,p3.. 其实也相当于 replacer($&,$1,$2,$3.. 资料 ...
- [SQL]replace替换字符串中的字符
','**') --下面是结果集 /* ----------- 12345678** */ SELECT replace(CONVERT(varchar(),GETDATE(),),'-','') - ...
随机推荐
- VIT论文笔记
VIT An image is worth 16x16 words: transformers for image recognition at scale 将transformer首次应用在视觉任务 ...
- 解读gitee上的vue3开源项目,并记录不熟悉的API
1.vue中的getCurrentInstance: 在Vue3中,getCurrentInstance()可以用来获取当前组件实例: 2.vue中使用mitt实现兄弟组件传值: 在vue3中$on, ...
- ubuntu下升级gcc11环境
使用ppa源升级 官网地址: https://launchpad.net/ ppa toolchan/test地址: https://launchpad.net/~ubuntu-toolchain-r ...
- vue双向数据绑定原理简单实现
vue双向数据绑定原理实现 准备工作 新建一个index.js文件, 一个index.html文件 index.js文件中, 定义Vue类, 并将Vue并称全局变量 window.Vue = ...
- 复习第7点-7.SpringMVC 的响应方式
1.使用ServletAPI实现转发 /* 使用HttpServletRequest对象实现请求转发 */ @RequestMapping("/httpServletRequest" ...
- jenkins目录
Jenkins目录详解: jobs目录:创建的所有jenkins工程.并含有所有构建历史记录和日志.其中config.xml为具体配置. plugins:所有插件 workspace:构建工程本机源码 ...
- [人脸识别]01-python环境准备-安装opencv
安装opencv pip install opencv-python pip install matplotlib pip install opencv-contrib-python --user
- Linux 软件包 管理
rpm.deb包管理操作 yum.apt/apt-get线上管理操作 查找软件包 $ yum search [name|info] $ apt-cache search [name|info] 安装软 ...
- PHP二维数组根据某个元素(key)排序
/** * 二维数组根据key排序 * @param $arr * @param $arr_key * @param string $order 排序规则 * @return mixed */ fun ...
- 找vector最大最小《转载》
定义了vector类型的数据,要找到其中的最大最小值,其实在C++中的algorithm头文件下就有直接的函数可以使用: #include <vector> #include <al ...