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标签在页面中的位置探讨
Apr 11 Javascript
jquery重复提交请求的原因浅析
May 23 Javascript
通过jquery 获取URL参数并进行转码
Aug 18 Javascript
javascript获取网页宽高方法汇总
Jul 19 Javascript
Webpack 实现 AngularJS 的延迟加载
Mar 02 Javascript
js自定义select下拉框美化特效
May 12 Javascript
angular4 JavaScript内存溢出问题
Mar 06 Javascript
JavaScript基础之静态方法和实例方法分析
Dec 26 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
Apr 11 Javascript
策略模式实现 Vue 动态表单验证的方法
Sep 16 Javascript
webpack安装配置与常见使用过程详解(结合vue)
Jun 01 Javascript
原生JS实现pc端轮播图效果
Dec 21 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
自己动手做一个SQL解释器
2006/10/09 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
php控制文件下载速度的方法
2015/03/24 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
2015/08/21 PHP
PHP实现搜索相似图片
2015/09/22 PHP
PHP生成指定范围内的N个不重复的随机数
2019/03/18 PHP
JQuery对id中含有特殊字符的转义处理示例
2013/09/06 Javascript
jquery实现滑动图片自己测试的例子
2013/11/05 Javascript
jQuery插件pagewalkthrough实现引导页效果
2015/07/05 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
vuejs如何配置less
2017/04/25 Javascript
JS实现多级菜单中当前菜单不随页面跳转样式而发生变化
2017/05/30 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
解决Vue2.0中使用less给元素添加背景图片出现的问题
2018/09/03 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
python实现的文件夹清理程序分享
2014/11/22 Python
Python操作串口的方法
2015/06/17 Python
Python实现LRU算法的2种方法
2015/06/24 Python
python利用urllib实现爬取京东网站商品图片的爬虫实例
2017/08/24 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
Python assert语句的简单使用示例
2019/07/28 Python
Python 复平面绘图实例
2019/11/21 Python
Python bisect模块原理及常见实例
2020/06/17 Python
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
Hotels.com中国区:好订网
2016/08/18 全球购物
英国袜子店:Sock Shop
2017/01/11 全球购物
专营店会计助理岗位职责
2013/11/29 职场文书
网上开店必备创业计划书
2014/01/26 职场文书
公司请假条范文
2014/04/11 职场文书
小学先进集体事迹材料
2014/05/31 职场文书
企业负责人任命书
2014/06/05 职场文书
房产协议书范本2014
2014/09/30 职场文书
Python基础数据类型tuple元组的概念与用法
2021/08/02 Python