说明: 以下函数中前两个函数取出查找字符串的前一部分和后一部分,以用于其他函数。注意,调用一次 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 标签
,同时还需要将空格符替换为 ,这样在显示留言信息的时候就能按用户输入的原格式进行显示了。
html文件如下:
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn