JavaScript字符串插入、删除、替换函数
说明:
以下函数中前两个函数取出查找字符串的前一部分和后一部分,以用于其他函数。注意,调用一次 replaceString(mainStr,searchStr,replaceStr) 函数,只能将字符串 mainStr 中最先找到的一个 searchStr 字符串替换为 replaceStr 字符串,并不能将字符串 mainStr 中所有的 searchStr 字符串替换为 replaceStr 字符串,如果需要替换全部,则需要使用循环。
函数源码:
//提取查找字符串前面所有的字符
function getFront(mainStr,searchStr){
foundOffset=mainStr.indexOf(searchStr);
if(foundOffset==-1){
return null;
}
return mainStr.substring(0,foundOffset);
}
//提取查找字符串后面的所有字符
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字符串插入、删除、替换函数的更多相关文章
- sql中保留一位小数的百分比字符串拼接,替换函数,换行符使用
select num ,cast(round(convert(float,isnull((a.Sum_Num-d.Sum_Num),0))/convert(float,c.Sum_Store_Num ...
- javascript 字符串转为对像函数eval("string")
javascript有一个很有用的函数eval("string")这个函数可以把字符串转换为对象或者可以执行的语句,例如你的代码可以用obj2=eval("documen ...
- iOS学习之--字符串的删除替换(字符串的常用处理,删除,替换)
字符串操作,比较简单,仅做记录! 1.删除 NSString *str1 = @"<hello,wo r d!>"; //删除字符串两端的尖括号 NSMutableSt ...
- iOS学习-字符串的删除替换
字符串的常用处理,删除,替换.记录一下,方便查找. -------------------------------------------------------------------------- ...
- JavaScript 字符串replace全局替换
一般使用replace let str = "2018-8-14"; str.replace('-','/')//2018/8-14 并没有替换第二个”-“, 所以我们用正则表达式 ...
- excel替换函数substitute
1.substitute(需要执行替换操作的单元格区域,旧文本,新文本,第N个旧内容) 例:substitute(A1,"a","b",2) A1=aab ...
- JavaScript 对图像进行(追加,插入,替换,删除)
JavaScript 对图像进行(追加,插入,替换,删除) 本次所学内容: document.querySelector('.container') 这个是可以查找单个[id标签和class标签] d ...
- C++(十)— 字符串进行插入、替换、查找、删除操作、substr
1.C++中对字符串进行插入.替换.删除操作 #include<iostream> #include<algorithm> #include<stdio.h> # ...
- sql字符串插入函数STUFF
STUFF (Transact-SQL) SQL Server 2012 其他版本 此主题尚未评级 - 评价此主题 <?XML:NAMESPACE PREFIX = "[default ...
随机推荐
- 为何visua studio看不到C++项目的LOG?
最近工程中添加了一个用C++编写的项目 它作为了我正式使用项目的引用 但是当我debug的时候 居然没有看到应该有的LOG 最后找到了解决方法,如下图所示: 右击你的正式项目,属性 改变调试器类型中的 ...
- Java Collection 集合类大小调整带来的性能消耗
Java Collection类的某些详细实现因为底层数据存储基于数组,随着元素数量的添加,调整大小的代价非常大.随着Collection元素增长到某个上限,调整其大小可能出现性能问题. 当Colle ...
- 【奇偶剪枝】【HDU1010】Tempter of the Bone
题意:输入一个n*m的迷宫,和一个T:可以在迷宫中生存的最大时间.S为起点,D为终点.并且,每个格子只能踩一次,且只能维持一秒,然后该块地板就会塌陷.所以你必须每秒走一步,且到D点时,所用时间为T. ...
- CSS备忘-1
CSS 可以通过以下方式添加到HTML中: 内联样式- 在HTML元素中使用"style" 属性 内部样式表 -在HTML文档头部 <head> 区域使用<sty ...
- asp.net mvc ajax提交例子
@{ Layout = null; } <script src="../../Scripts/jquery-1.10.2.min.js" type="text/ja ...
- 使用 HttpWebRequest 发送模拟 POST 请求
使用HttpWebRequest发送模拟POST请求 网页中,如果form的method="POST",这时点击submit按钮可以给服务器发送了一个POST请求,如果metho ...
- HMM模型详解
http://www.cnblogs.com/skyme/p/4651331.html
- js 完美兼容浏览器的复制功能
1,js结合swf的复制功能,完美兼容火狐,谷歌,360,ie8,使用示例:(ps:引入copy.swf比较重要,文件传送门 解压密码:http://www.bieanju.com/,为了防止360删 ...
- 初识Linux 命令
1.linux基本原则 (1)有目的单一的小程序组成:组合小程序完成复杂任务 (2)一切皆文件 (3)尽量避免捕获用户接口 (4)配置文件保存为纯文本格式 2.命令格式 命令 选项 参数 短选项 - ...
- sql中Statement与PreparedStatement的区别
1.Statement用于执行静态sql语句,在执行时,必须指定一个事先准备好的sql语句,也就是说sql语句是静态的. 2.PrepareStatement是预编译的sql语句对象,sql语句被预编 ...