【JavaScript】JavaScript中的replaceAll
JavaScript中是没有replaceAll的。仅仅有replace,replace仅仅能替换字符中的第一个字符。并且这个replace里面不支持正則表達式,以达到replaceAll的目的。
只是能够自己写一个JavaScript中的replaceAll,也不用写到str.replaceAll,一点就能够用的程度的程度。写一个返回值为字符串类型、处理之后的字符串;形式參数为要处理的字符串,要被替换的东西、要被替换成的东西的函数就能够了。
写好一个JavaScript中的replaceAll能够对某些多行文本框从数据库读取数据,之后清理多行文本框不能被javascript中清理HTML函数。详见《【JavaScript】某些字符不转义能够导致网页崩溃与涉及转义字符的显示方法》(点击打开链接),把<BR>清理成\r\n的问题,从而在多行文本框正常显示的问题。
这多见于一些编辑功能。
JavaScript的replaceAll函数例如以下:
function replaceAll(str,replaced,replacement){
var reg=new RegExp(replaced,"g");
str=str.replace(reg,replacement);
return str;
}
详细使用方式用一个样例来说明这个函数的利用,
比方站点有例如以下的表单。显示如同word中的替换功能。
这个网页的布局例如以下,非常easy,请注意里面的ID就可以:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>replaceAll</title>
</head> <body>
<textarea id="str"></textarea><br />
把<input type="text" id="replaced" />替换成<input type="text" id="replacement" /><button onclick="replaceAllTest()">go!</button>
</body>
</html>
GObutton首先调用脚本中的replaceAllTest函数,把文本框中的内容,被替换的内容,要替换的内容拿过来。直接调用上文的replaceAll()函数,完毕替换得到的字符串,则替换文本框中的文本就可以。
<script>
function replaceAllTest(){
var str=document.getElementById("str").value;
var replaced=document.getElementById("replaced").value;
var replacement=document.getElementById("replacement").value;
str=replaceAll(str,replaced,replacement);
document.getElementById("str").value=str;
}
function replaceAll(str,replaced,replacement){
var reg=new RegExp(replaced,"g");
str=str.replace(reg,replacement);
return str;
}
</script>
【JavaScript】JavaScript中的replaceAll的更多相关文章
- JavaScript jQuery 中定义数组与操作及jquery数组操作
首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...
- JavaScript文件中调用AngularJS内部方法或改变$scope变量
需要在其他JavaScript文件中调用AngularJS内部方法或改变$scope变量,同时还要保持双向数据绑定: 首先获取AngularJS application: 方法一:通过controll ...
- JavaScript ES7 中使用 async/await 解决回调函数嵌套问题
原文链接:http://aisk.me/using-async-await-to-avoid-callback-hell/ JavaScript 中最蛋疼的事情莫过于回调函数嵌套问题.以往在浏览器中, ...
- 警惕javascript代码中的“</script>”!
之前在写<博客园自定义博客侧边栏公告的过滤漏洞>的时候遇到了一个javascript代码报错“语法错误”的问题,一直不得以解决,感谢Arliang发现了并为我进行了耐心的解释,现整理如下: ...
- [记录] javascript 对象中使用setTimeout
参考:Javascript对象中关于setTimeout和setInterval的this介绍 使用最后一个方法终于弄好了,简直了,在对象中使用setTimeout原来是这样的 做的是分钟倒计时,倒数 ...
- 第一百节,JavaScript表达式中的运算符
JavaScript表达式中的运算符 学习要点: 1.什么是表达式 2.一元运算符 3.算术运算符 4.关系运算符 5.逻辑运算符 6.*位运算符 7.赋值运算符 8.其他运算符 9.运算符优先级 E ...
- Javascript Jquery 中的数组定义与操作_子木玲_新浪博客
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- JavaScript 语言中的 this
JavaScript 语言中的 this 由于其运行期绑定的特性,JavaScript 中的 this 含义要丰富得多,它可以是全局对象.当前对象或者任意对象,这完全取决于函数的调用方式.JavaSc ...
- JavaScript面向对象中的继承
1.1继承的基本概念 使用一个子类,继承另一个父类,那么子类可以自动拥有父类中的所有属性和方法,这个过程叫做继承. >>>继承的两方,发生在两个类之间. 实现继承的三种方式: 扩展O ...
随机推荐
- 【BZOJ4826】【HNOI2017】影魔
题意: Description 影魔,奈文摩尔,据说有着一个诗人的灵魂.事实上,他吞噬的诗人灵魂早已成千上万.千百年来,他收集了各式各样的灵魂,包括诗人.牧师.帝王.乞丐.奴隶.罪人,当然,还有英雄. ...
- HDU-5009 Paint Pearls 动态规划 双向链表
题目链接:https://cn.vjudge.net/problem/HDU-5009 题意 给一串序列,可以任意分割多次序列,每次分割的代价是被分割区间中的数字种数. 求分割区间的最小代价.n< ...
- LightOJ-1336 Sigma Function 唯一分解定理 巧妙使用sqrt()等算数目
题目链接:https://cn.vjudge.net/problem/LightOJ-1336 题意 给出一个区间[1, n],求区间内所有数中因数之和为偶数的数目 思路 第二次写这个题 首先想到唯一 ...
- luogu P3765 总统选举(线段树维护摩尔投票+平衡树)
这题需要一个黑科技--摩尔投票.这是一个什么东西?一个神奇的方法求一个序列中出现次数大于长度一半的数. 简而言之就是同加异减: 比如有一个代表投票结果的序列. \[[1,2,1,1,2,1,1]\] ...
- JMS消息
1.消息可分为3部分:消息头.属性和有效负载 消息头:用于标识消息.声明消息属性及提供路由信息的特殊字段组成. 消息的属性区包含了和该消息有关的附加元数据,这个元数据由应用程序开发者进行设置,或者由J ...
- UVA 12003 Array Transformer
Array Transformer Time Limit: 5000ms Memory Limit: 131072KB This problem will be judged on UVA. Orig ...
- mysql-汇总(聚集)函数
我们需要汇总数据而不用把他们实际检索出来,他们主要用来进行分析和报表数据的生成. 1.AVG:通过对表中行数计数并计算特定列值之和,求得该列的平均值.可用来返回所有列的平均值,也可以用来返回特定列或行 ...
- MooseFS源代码分析(二)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...
- node03--http
form.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- visual studio code(vscode)的使用(快捷键)
Visual Studio Code初探 vscode 是一种可运行于 OS X,Windows 和 Linux 之上的免费跨平台编辑器: 1. 快捷键 ctrl + `:调出(对于 windows ...