欢迎
我需要比较javascript中的两个文本,如果主文本中存在任何字符并给出该字符的位置
示例:
我需要创建一个函数来检查Leen和Meen中的所有字符以获得相似的字符和输出必须是这样的
回答:een
任何人都可以帮助我吗?
答案 0 :(得分:1)
这是我提出的算法: 这对小字符串工作正常,所以你不需要使用dp算法来提高性能,如果你试图在两个很长的字符串中找到共享子字符串,那么建议使用dp。
function a(text1, text2) {
var maxPossibleLength = text2.length;
var results = [];
/*
var result = {
targetMatchIndex : 0,
sourceMatchIndex: 0,
matchString : ""
};
*/
while (maxPossibleLength > 0) {
for (var i = 0; (i + maxPossibleLength) <= text2.length; i++) {
var possibleSubstring = text2.substring(i, i + maxPossibleLength);
var matchIndex = text1.indexOf(possibleSubstring);
if (matchIndex > 0) {
results.push({
targetMatchIndex: matchIndex,
sourceMatchIndex: i,
matchString: possibleSubstring
})
}
}
//match max substring only
if(results.length > 0) {
break;
}
maxPossibleLength--;
}
return results;
}
console.log(a("13423323", "a23b"))