1
我想查找两个字符串之间的差异。例如,如果查找两个字符串之间的多个区别
line1 = "My name is ABC"
line2 = "My age is xyz"
然后,我应该能够得到名称 - 年龄和ABC - xyz的差异。
我想我可以使用Levenshtein距离,但无法弄清楚。任何帮助是极大的赞赏。
我想查找两个字符串之间的差异。例如,如果查找两个字符串之间的多个区别
line1 = "My name is ABC"
line2 = "My age is xyz"
然后,我应该能够得到名称 - 年龄和ABC - xyz的差异。
我想我可以使用Levenshtein距离,但无法弄清楚。任何帮助是极大的赞赏。
<?php
$line1 = "My name is ABC";
$line2 = "My age is xyz";
$matchlen = strspn($line1, $line2);
// remove 1st non-matching char
$same = substr($line1, 0, $matchlen - 1);
// include 1st non-matching char
$diff = substr($line2, $matchlen - 1);
printf("Same: [%s]\nDiff: [%s]", $same, $diff);
?>
这将无法正常工作,因为第一个区别在长度上不匹配:'name:4'和'age:3' – froeschli 2011-04-21 12:24:36