JavaScript字符串插入、删除、替换函数使用示例


Posted in Javascript onJuly 25, 2013

说明:

以下函数中前两个函数取出查找字符串的前一部分和后一部分,以用于其他函数。注意,调用一次 replaceString(mainStr,searchStr,replaceStr) 函数,只能将字符串 mainStr 中最先找到的一个 searchStr 字符串替换为 replaceStr 字符串,并不能将字符串 mainStr 中所有的 searchStr 字符串替换为 replaceStr 字符串,如果需要替换全部,则需要使用循环。

函数源码:
[code
//提取查找字符串前面所有的字符 
function getFront(mainStr,searchStr){
foundOffset=mainStr.indexOf(searchStr);
if(foundOffset==-1){
return null;
}
return mainStr.substring(0,foundOffset);
}
[/code]

//提取查找字符串后面的所有字符 
function getEnd(mainStr,searchStr){ 
foundOffset=mainStr.indexOf(searchStr); 
if(foundOffset==-1){ 
return null; 
} 
return mainStr.substring(foundOffset+searchStr.length,mainStr.length); 
}

//在字符串 searchStr 前面插入字符串 insertStr 
function insertString(mainStr,searchStr,insertStr){ 
var front=getFront(mainStr,searchStr); 
var end=getEnd(mainStr,searchStr); 
if(front!=null && end!=null){ 
return front+insertStr+searchStr+end; 
} 
return null; 
}

//删除字符串 deleteStr 
function deleteString(mainStr,deleteStr){ 
return replaceString(mainStr,deleteStr,""); 
}

//将字符串 searchStr 修改为 replaceStr 
function replaceString(mainStr,searchStr,replaceStr){ 
var front=getFront(mainStr,searchStr); 
var end=getEnd(mainStr,searchStr); 
if(front!=null && end!=null){ 
return front+replaceStr+end; 
} 
return null; 
}

使用示例:
假设有一表单,用于接收用户的留言信息。我们需要将留言内容中用户输入的回车换行替换为 HTML 标签 <br>,同时还需要将空格符替换为  ,这样在显示留言信息的时候就能按用户输入的原格式进行显示了。
html文件如下:
<html> 
<head> 
<script language="javaScript"> 
//此处由以上提供的脚本函数源码填充,即getFront、getEnd、replaceString 
//[、insertString、deleteString]。 
//表单检测函数 
function checkForm(form){ 
var gb_contentStr=form.elements["gb_content"].value; 
//将留言内容中的所有空格符替换为   
while(gb_contentStr.indexOf(" ") != -1 ){ 
gb_contentStr=replaceString(gb_contentStr," "," "); 
} 
//将留言内容中的所有回车符替换为<br> 
while(gb_contentStr.indexOf("\r\n") != -1 ){ 
gb_contentStr=replaceString(gb_contentStr,"\r\n","<br>"); 
} 
form.elements["gb_content"].value=gb_contentStr; //保存由以上脚本修改后的留言内容 
return true; //提交留言信息 
} 
</script> 
</head> 
<body> 
<form action="writePro.asp" method="post" name="addliuyan" onSubmit="return checkForm(this)"> 
<table width="50%" border="1" cellspacing="0" cellpadding="0" align="center"> 
<tr valign="middle"> 
<td width="15%" height="25" align="right">留言内容:</td> 
<td width="35%" height="25" align="center"> 
<textarea style="overflow: auto; width: 100%;" name="gb_content" rows="11"></textarea> 
</td> 
</tr> 
</table> 
</form> 
</body> 
</html>
Javascript 相关文章推荐
精通JavaScript 纠正 cleanWhitespace函数
Mar 11 Javascript
js分解url参数(面向对象-极简主义法应用)
Aug 09 Javascript
JavaScript中的函数声明和函数表达式区别浅析
Mar 27 Javascript
深入理解JavaScript编程中的同步与异步机制
Jun 24 Javascript
JS与jQuery实现隔行变色的方法
Sep 09 Javascript
JS填写银行卡号每隔4位数字加一个空格
Dec 19 Javascript
基于Vue2.0的分页组件
Mar 16 Javascript
JavaScript实现开关等效果
Sep 08 Javascript
node.js基于express使用websocket的方法
Nov 09 Javascript
利用jquery和BootStrap实现动态滚动条效果
Dec 03 jQuery
Vue + element 实现多选框组并保存已选id集合的示例代码
Jun 03 Javascript
何时/使用 Vue3 render 函数的教程详解
Jul 25 Javascript
不使用浏览器运行javascript代码的方法
Jul 24 #Javascript
js展开闭合效果演示代码
Jul 24 #Javascript
火狐textarea输入法的bug的触发及解决
Jul 24 #Javascript
当前页禁止复制粘贴截屏代码小集
Jul 24 #Javascript
js实现倒计时(距离结束还有)示例代码
Jul 24 #Javascript
javascript中比较字符串是否相等的方法
Jul 23 #Javascript
js改变img标签的src属性在IE下没反应的解决方法
Jul 23 #Javascript
You might like
2019年漫画销量排行榜:鬼灭登顶 海贼单卷制霸 尾田盛赞鬼灭
2020/03/08 日漫
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
Jquery iframe内部出滚动条
2010/02/11 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
Javascript基础教程之if条件语句
2015/01/18 Javascript
javascript图片预加载实例分析
2015/07/16 Javascript
javascript实现图片延迟加载方法汇总(三种方法)
2015/08/27 Javascript
js实现仿微博滚动显示信息的效果
2015/12/21 Javascript
JS用斜率判断鼠标进入DIV四个方向的方法
2016/11/07 Javascript
Node.js 8 中的 util.promisify的详解
2017/06/12 Javascript
全选复选框JavaScript编写小结(附代码)
2017/08/16 Javascript
vue使用vue-i18n实现国际化的实现代码
2018/04/08 Javascript
JavaScript获取某一天所在的星期
2019/09/05 Javascript
[01:03:37]Secret vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
python正则表达式re之compile函数解析
2017/10/25 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
python sort、sort_index方法代码实例
2019/03/28 Python
Python读取stdin方法实例
2019/05/24 Python
Python HTMLTestRunner可视化报告实现过程解析
2020/04/10 Python
Python离线安装各种库及pip的方法
2020/11/28 Python
如何用Python进行时间序列分解和预测
2021/03/01 Python
加拿大约会网站:EliteSingles.ca
2018/01/12 全球购物
银行类自荐信
2014/02/04 职场文书
揠苗助长教学反思
2014/02/04 职场文书
企业职业病防治方案
2014/05/29 职场文书
英语专业求职信
2014/07/08 职场文书
领导班子自我剖析材料
2014/08/16 职场文书
药店收银员岗位职责
2015/04/07 职场文书
2015年双拥工作总结
2015/04/08 职场文书
关于法制教育的宣传语
2015/07/13 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
浅谈:电影《孔子》观后感(范文)
2019/10/14 职场文书
Python语言规范之Pylint的详细用法
2021/06/24 Python
JavaScript中时间格式化新思路toLocaleString()
2021/11/07 Javascript