Выбор строки для перехода к первому / второму параметру в Similar_text - PullRequest
0 голосов
/ 25 июня 2018

У меня есть список строк.Для каждой строки мне нужно найти наиболее похожую строку из другого списка строк.В настоящее время я всегда передаю строку в первом списке в качестве первого параметра, а строку во втором списке - в качестве второго параметра в similar_text, например:

foreach($list_a as $str_a){

    $most_similar_str = null;
    $most_similar_str_pct = 0;

    foreach($list_b as $str_b){

        //swapping parameter order may yield a different result
        similar_text($str_a, $str_b, $pct);

        if($pct > $most_similar_str_pct){
            $most_similar_str = $str_b;
            $most_similar_str_pct = pct;
        }
    }

    echo "The most similar text for {$str_a} is {$most_similar_str}\n";

}

Замена первого и второго параметра в similar_text может дать другой результат.Чтобы получить более точный результат, я не уверен, какая строка должна идти к первому / второму параметру.

Я также думаю о том, должен ли я сначала найти более длинную строку из $str_a и $str_bи всегда используйте его в качестве первого / второго параметра.

1 Ответ

0 голосов
/ 25 июня 2018

Я провел много экспериментов с Similar_text относительно обмена и видел, что наиболее правильные результаты получаются, когда первый параметр длиннее второго. В этом случае strlen будет вашим другом, чтобы решить, кто будет первым параметром

...