js 实现replaceAll
须要替换到字符串里面的多个双引號,不废话,直接上代码:
var filePath = '"d:/img/1.jgp"';
filePath = filePath.replace(new RegExp(/(")/g), "");
替换后的结果:
<pre name="code" class="javascript">d:/img/1.jgp
另外提供replace功能:
JavaScript replace() 方法
定义和使用方法
replace() 方法用于在字符串中用一些字符替换还有一些字符,或替换一个与正則表達式匹配的子串。
语法
stringObject.replace(regexp/substr,replacement)
| 參数 | 描写叙述 |
|---|---|
| regexp/substr |
必需。 规定子字符串或要替换的模式的 RegExp 对象。 请注意,假设该值是一个字符串。则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。 |
| replacement | 必需。一个字符串值。规定了替换文本或生成替换文本的函数。 |
返回值
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或全部匹配之后得到的。
说明
字符串 stringObject 的 replace() 方法运行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。假设 regexp 具有全局标志 g。那么 replace() 方法将替换全部匹配的子串。否则。它仅仅替换第一个匹配子串。
replacement 能够是字符串,也能够是函数。假设它是字符串。那么每一个匹配都将由字符串替换。
可是 replacement 中的 $ 字符具有特定的含义。例如以下表所看到的。它说明从模式匹配得到的字符串将用于替换。
| 字符 | 替换文本 |
|---|---|
| $1、$2、...、$99 | 与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。 |
| $& | 与 regexp 相匹配的子串。 |
| $` | 位于匹配子串左側的文本。 |
| $' | 位于匹配子串右側的文本。 |
| $$ | 直接量符号。 |
注意:ECMAScript v3 规定,replace() 方法的參数 replacement 能够是函数而不是字符串。在这种情况下,每一个匹配都调用该函数,它返回的字符串将作为替换文本使用。该函数的第一个參数是匹配模式的字符串。接下来的參数是与模式中的子表达式匹配的字符串,能够有 0 个或多个这种參数。
接下来的參数是一个整数,声明了匹配在
stringObject 中出现的位置。最后一个參数是 stringObject 本身。
实例
样例 1
在本例中。我们将使用 "W3School" 替换字符串中的 "Microsoft":
<script type="text/javascript"> var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "W3School")) </script>
输出:
Visit W3School!
样例 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, "W3School")) </script>
输出:
Welcome to W3School! We are proud to announce that W3School
has one of the largest Web Developers sites in the world.
样例 3
您能够使用本例提供的代码来确保匹配字符串大写字符的正确:
text = "javascript Tutorial";
text.replace(/javascript/i, "JavaScript");
样例 4
在本例中。我们将把 "Doe, John" 转换为 "John Doe" 的形式:
name = "Doe, John";
name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");
样例 5
在本例中,我们将把全部的花引號替换为直引號:
name = '"a", "b"';
name.replace(/"([^"]*)"/g, "'$1'");
样例 6
在本例中。我们将把字符串中全部单词的首字母都转换为大写:
name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
return word.substring(0,1).toUpperCase()+word.substring(1);}
);
TIY
- replace() 1
- 怎样使用 replace() 来替换字符串中的字符。
f=jseg_replace_2" style="margin:0px; padding:0px; border:0px; color:rgb(144,11,9); background:transparent">replace() 2 - 全局搜索
- 怎样使用 replace() 进行全局替换。
f=jseg_replace_3" style="margin:0px; padding:0px; border:0px; color:rgb(144,11,9); background:transparent">replace() 3 - 对大写和小写不敏感的搜索
- 怎样使用 replace() 确保大写字母的正确性。
- replace() 4
- 怎样使用 replace() 来转换姓名的格式。
- replace() 5
- 怎样使用 replace() 来转换引號。
f=jseg_replace_6" style="margin:0px; padding:0px; border:0px; color:rgb(144,11,9); background:transparent">replace() 6
- 怎样使用 replace() 把单词的首字母转换为大写。
js 实现replaceAll的更多相关文章
- js用replaceAll全部替换的方法
1 前言 js中字符串整体替换,只有自带的replace,并没有replaceAll,如果我们需要把字符串中的字符统一替换,可以用正则表达式,由于经常使用就在String直接加个原生方法,方便调用. ...
- js replace replaceAll
今天因为一些原因来看这篇博文,测试了一下根本不对.replace根本没有string.replace("字符","字符")这样的写法,而是stringObjec ...
- js实现replaceAll功能
js中没有原生的replaceAll 方法. function replaceAll(str , replaceKey , replaceVal){ var reg = new RegExp(repl ...
- js 实现ReplaceAll 的方法
JS 字符串有replace() 方法.但这个方法只会对匹配到的第一个字串替换. 如下例: <HTML> <HEAD> <TITLE> New Document ...
- js实现replaceAll方法
js本来有replace方法,请看w3school的说明: replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. 语法: stringObject.rep ...
- js 扩展replaceAll
//扩展replaceAll; String.prototype.replaceAll = function(s1,s2) { return this.replace(new RegExp(s1,&q ...
- js replace使用及正则表达式使用
本文为博主原创,未经允许不得转载: js中replace方法与java中的replace方法相同,主要做替换. 表达式:stringObj.replace(rgExp, replaceText) 参数 ...
- JS操作JSON常用方法
一.JSON字符串的替换 工作经常遇到这样的字符串,如下: 需要经过替换后,才能从字符串转化成JSON对象.这里我们需要用JS实现replaceAll的功能, 将所有的 ' \\" ' 替换 ...
- 10分钟学会js处理json常用方法
一.json定义 JSON ( JavaScript Object Notation) ,它是一串字符串 只不过元素会使用特定的符号标注. {} 双括号表示对象 [] 中括号表示数组 "&q ...
随机推荐
- android studio 的Error:No such property: packageApplicationTask for class: com.android.build.gradle.internal.variant.ApkVariantOutputData解决方法
出现这个原因是安装了jrebel热部署插件,在projectStructure中的projec选项中,android 插件源仓会有热部署的配置.将jcenter后的配置全部删除就可以 注:本人只安装了 ...
- mongo 3.4分片集群系列之五:详解平衡器
这个系列大致想跟大家分享以下篇章: 1.mongo 3.4分片集群系列之一:浅谈分片集群 2.mongo 3.4分片集群系列之二:搭建分片集群--哈希分片 3.mongo 3.4分片集群系列之三:搭建 ...
- Farseer.net轻量级开源框架 入门篇:添加数据详解
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 入门篇: 分类逻辑层 下一篇:Farseer.net轻量级开源框架 入门篇: 修改数据详解 ...
- JavaScipt30(第四个案例)(主要知识点:数组原型链上的一些方法)
承接上文,下面是第四个案例 附上项目链接: https://github.com/wesbos/JavaScript30 const inventors = [ { first: 'Albert', ...
- vue基础---介绍
(1)声明式渲染 Vue.js 的核心是采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统: ①文本 <div id="app"> {{ message }} & ...
- form表单中只有一个input时,按回车键后表单自动提交(form表单的一个小坑)
form中只有一个input按回车键表单会自动提交 在一个form表单中,若只有一个input,按回车键表单会自动提交,但是当表单中存在多个input时,按回车键不会执行任何操作,这是form表单的一 ...
- Luogu P1991 无线通讯网
P1991 无线通讯网 题目描述 国防部计划用无线网络连接若干个边防哨所.2 种不同的通讯技术用来搭建无线网络: 每个边防哨所都要配备无线电收发器:有一些哨所还可以增配卫星电话. 任意两个配备了一条卫 ...
- nginx代理标准配置
#nginx开启的进程数worker_processes 4; #4核CPU #定义全局错误日志定义类型,[debug|info|notice|warn|crit]error_log ...
- php正则表达式匹配html标签
用php正则表达式找出div标签,div允许多层嵌套,比如在以下文本中找出class为quizPutTag的div? <html> <head></head> &l ...
- Django-REST_Framework 第三方登录
DRF第三方登录,我们将使用第三方包实现!!! 1.首先安装 pip install social-auth-app-django 文档请看 https://python-social-auth.re ...