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() 来替换字符串中的字符。
- 怎样使用 replace() 进行全局替换。
- 怎样使用 replace() 确保大写字母的正确性。
- replace() 4
- 怎样使用 replace() 来转换姓名的格式。
- replace() 5
- 怎样使用 replace() 来转换引號。
- 怎样使用 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 ...
随机推荐
- Struts工作机制
Struts工作机制? 为什么要使用Struts?工作机制:Struts的工作流程:在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config. ...
- Python-Day07-图形用户界面和游戏开发
Python-100Day-学习打卡Author: Seven_0507Date: 2019-05-22123 文章目录Python图形用户界面和游戏开发1. tkinter模块2. Pygame进行 ...
- 安卓app测试之流量监控
一.查看PID 通过ps命令查看:ps | grep packageName 案例:adb shell "ps | grep tv.danmaku.bili" adb shell ...
- nginx配置X-Forwarded-For 防止伪造ip
网上常见nginx配置ip请求头 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 风险: 用于可以通过自己设置请求头来伪造ip ...
- Eureka组件、Eureka自我保护模式
Eureka包含两个组件:Eureka Server和Eureka Client Eureka Server提供服务发现的能力,各个微服务启动时,会向Eureka Server注册自己的信息(例如 ...
- C++ 迭代器运算符 箭头运算符->
所有标准库容器都支持迭代器,只有少数几种才支持下标运算 迭代器运算符 运算符 作用 *iter 返回迭代器iter所指元素的引用 iter -> mem 解引用iter,并获取元素名为mem的成 ...
- TestNG多线程测试-注解方式实现
用@Test(invocationCount = x,threadPoolSize = y)声明,invocationCount表示执行次数,threadPoolSize表示线程池大小. packag ...
- db2记录去重
--查出二码,归档日期,借据号重复的数据的条数 select default_index_item_id,record_date,index_yxdk_dkjjh,min(sys_org_id),ma ...
- linux find-在指定目录下查找文件
推荐:更多Linux 文件查找和比较 命令关注:linux命令大全 find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find ...
- vim基础(一)
今天看了下兄弟连的VIM讲解,又学了几个新命令,记录一下. 插入与删除 插入 首先还是插入,以前只知道i.今天发现原来还有a\A\i\I\o\O,下面具体说一下: 命令 含义 a 在光标后插入 A 在 ...