Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript:从两个稍有不同的字符串获取规范化的_Javascript - Fatal编程技术网

javascript:从两个稍有不同的字符串获取规范化的

javascript:从两个稍有不同的字符串获取规范化的,javascript,Javascript,我有两个斜杠数相等的字符串,每个位置都有相同的字母。总有一个字母和一个方括号表示索引。两个字符串中始终有一个对应的字母 var first = "/a/b[1]/c/d[3]/e[1]/f" var second = "/a/b[1]/c/d[4]/e/f" 我希望输出应该是 result = "/a/b[1]/c/d/e/f" 这就是我想到的,但也许有更好的方法,因为它返回的/a/b/c/d/e/f不是我想要的 var first=“/a/b[1]/c/d[3]/e[1]/f”。拆分(“/

我有两个斜杠数相等的字符串,每个位置都有相同的字母。总有一个字母和一个方括号表示索引。两个字符串中始终有一个对应的字母

var first = "/a/b[1]/c/d[3]/e[1]/f"
var second = "/a/b[1]/c/d[4]/e/f"
我希望输出应该是

result = "/a/b[1]/c/d/e/f"
这就是我想到的,但也许有更好的方法,因为它返回的
/a/b/c/d/e/f
不是我想要的

var first=“/a/b[1]/c/d[3]/e[1]/f”。拆分(“/”;
var second=“/a/b[1]/c/d[4]/e/f”。拆分(“/”;
对于(变量i=0;i
我刚刚解决了这个问题。它是一个节点项目,但主文件依赖性较小,因此可移植

使用动态规划算法计算Levenshtein距离,并使用该变换生成正则表达式。子项变为通配符,插入或删除变为可选字符

var Levenshtein = require('levenshtein-transformation)';
var lev = new Levenshtein(str1, str2);
console.log(lev.regex());

我没有节点,我可以在浏览器中使用它吗?@user299709您可能可以使用browserify或其他任何东西。但是主文件Levenshtein.js没有我刚才所说的依赖性。您可以复制并粘贴它,它就会工作。我不能使用它,因为它似乎需要.js脚本中的其他节点模块
var regexpQuote=require('regexp-quote');var assert=require('assert')如果有浏览器版本,这将非常好。
var Levenshtein = require('levenshtein-transformation)';
var lev = new Levenshtein(str1, str2);
console.log(lev.regex());