首先,我是javascript的新手。
我的问题:
假设我有一个像这样的字符串
var str = "John Doe in the name used for people with no identity";
我需要一个带有3个参数的函数,比如
pullSubstring(text, string, number)
它会返回一个像这样的新字符串
*length of the number in strings* + string + *length of the number in strings*
更具体地说,这是一个例子:
如果我像这样调用这个函数
pullSubstring("for", "John Doe in the name used for people with no identity", 5)
结果将类似于"used for peop"
。
答案 0 :(得分:0)
您可以使用此功能:
function pullSubstring(searched,text,bordersLenght) {
var idx = text.indexOf(searched);
if (idx == -1 )
return "";
var startFrom = idx-bordersLenght;
var endAt = idx + bordersLenght + searched.length;
if (startFrom < 0)
startFrom=0;
if (endAt > text.length-1)
endAt = text.length-1;
return text.substring(startFrom,endAt);
}
您必须选择在找不到搜索到的字符串时返回的内容(我的函数返回空字符串),或者在找到的文本之前或之后添加n个字符将在文本开始之前或之后添加n字符(我的函数在这两种情况下修剪了返回的文本。)