PHP Levenshtein百分比

PHP Levenshtein百分比,php,levenshtein-distance,Php,Levenshtein Distance,您能解释一下为什么在确定levenshtein百分比时需要同时使用输入字符串和匹配字符串吗 $str1len = strlen($str1); $str2len = strlen($str2); if($str1len < $str2len){ $pct = ($str1len - $lev) / $str1len; } else { $pct = ($str2len - $lev) / $str2len; }

您能解释一下为什么在确定levenshtein百分比时需要同时使用输入字符串和匹配字符串吗

$str1len = strlen($str1);        
$str2len = strlen($str2);    
if($str1len < $str2len){    
    $pct = ($str1len - $lev) / $str1len;    
} else {    
    $pct = ($str2len - $lev) / $str2len;    
}   
$pct = $pct * 100;      
$str1len=strlen($str1);
$str2len=strlen($str2);
如果($str1len<$str2len){
$pct=($str1len-$lev)/$str1len;
}否则{
$pct=($str2len-$lev)/$str2len;
}   
$pct=$pct*100;

因为这是一个百分比。你需要将一个数字与另一个数字进行比较


levenshtein距离是将第一个字符串更改为第二个字符串所需的两个字符串之间的单个字符更改数。百分比是更改了多少原始字符。e、 g.a列夫。10个字符的单词(20%)上的距离为2比lev小。两个字符的单词上的距离为2(100%),即使两个字符都是lev。距离是一样的。

我看不到Leveshtein距离算法在代码中的任何地方都适用。不管怎样,你需要两个字符串,你把一个字符串和另一个字符串进行比较。我真的不明白你的意思,因为公式使用了它。“为什么”的问题通常过于模糊,无法客观地回答。试着修改这个问题,不要使用“为什么”。