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 相关文章推荐
JS小框架 fly javascript framework
Nov 26 Javascript
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
Feb 07 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
JavaScript数组常用操作技巧汇总
Nov 17 Javascript
javascript父子页面通讯实例详解
Jul 17 Javascript
jquery获取复选框checkbox的值实现方法
May 30 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
Jan 14 Javascript
JavaScript中的事件与异常捕获详析
Feb 24 Javascript
JavaScript中filter的用法实例分析
Feb 27 Javascript
Nuxt的动态路由和参数校验操作
Nov 09 Javascript
为什么推荐使用JSX开发Vue3
Dec 28 Vue.js
JavaScript 生成唯一ID的几种方式
Feb 19 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
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
php调整服务器时间的方法
2015/04/03 PHP
php的4种常用运行方式详解
2016/12/22 PHP
浅谈laravel数据库查询返回的数据形式
2019/10/21 PHP
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
让html元素随浏览器的大小自适应垂直居中的实现方法
2016/10/12 Javascript
Javascript highcharts 饼图显示数量和百分比实例代码
2016/12/06 Javascript
js+html制作简单验证码
2017/02/16 Javascript
认识less和webstrom的less配置方法
2017/08/02 Javascript
vue-cli脚手架config目录下index.js配置文件的方法
2018/03/13 Javascript
从零开始在NPM上发布一个Vue组件的方法步骤
2018/12/20 Javascript
Vue中实现回车键切换焦点的方法
2020/02/19 Javascript
基于js实现数组相邻元素上移下移
2020/05/19 Javascript
koa2 数据api中间件设计模型的实现方法
2020/07/13 Javascript
[03:00]《DAC最前线》之欧美新秀VS老将
2015/02/01 DOTA
python实现的防DDoS脚本
2011/02/08 Python
python 生成不重复的随机数的代码
2011/05/15 Python
python创建和使用字典实例详解
2013/11/01 Python
Python中for循环和while循环的基本使用方法
2015/08/21 Python
python遍历目录的方法小结
2016/04/28 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
python 定时器,实现每天凌晨3点执行的方法
2019/02/20 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
VSCode配合pipenv搞定虚拟环境的实现方法
2020/05/17 Python
什么是python的列表推导式
2020/05/26 Python
详解Python IO编程
2020/07/24 Python
Zalando Lounge瑞士:时尚与生活方式购物俱乐部
2020/03/12 全球购物
SQL Server的固定数据库角色都有哪些?对应的服务器权限有哪些?
2013/05/18 面试题
中专毕业生自我鉴定
2014/02/02 职场文书
导师就业推荐信范文
2014/05/22 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
Redis遍历所有key的两个命令(KEYS 和 SCAN)
2021/04/12 Redis
HTML+CSS 实现顶部导航栏菜单制作
2021/06/03 HTML / CSS
JavaScript 与 TypeScript之间的联系
2021/11/27 Javascript
MySQL七大JOIN的具体使用
2022/02/28 MySQL