mb_levenshtein
v1.0.1
Levenshtein PHP功能具有UTF-8支持。此功能发现两个字符串之间的相似性距离。
Levenshtein距离的回报。 (较小,靠近)
mb_levenshtein ( string $ str1 , string $ str2 ) : int mb_levenshtein ( string $ str1 , string $ str2 , int $ cost_ins , int $ cost_rep , int $ cost_del ) : intLEVENSHTEIN比率在0到1之间的回报(较大,接近)
mb_levenshtein_ratio ( string $ str1 , string $ str2 ) : float mb_levenshtein_ratio ( string $ str1 , string $ str2 , int $ cost_ins , int $ cost_rep , int $ cost_del ) : float <?php
include_once ( ' ./mb_levenshtein.php ' );
$ query = ' cafe ' ;
$ comps = [
' coffee ' ,
' café ' ,
' tea ' ,
' sake ' ,
];
echo " Query word: $ {query}" . PHP_EOL ;
foreach ( $ comps as $ comp ) {
$ sim = mb_levenshtein ( $ query , $ comp );
echo " $ {comp} : $ {sim}" . PHP_EOL ;
}结果:
$ # The smaller, the closer
$ php ./sample.php
Query word: cafe
coffee: 3
café: 1
tea: 4
sake: 2 使用发布版本:
composer require keinos/mb_levenshtein使用最新版本:
composer require keinos/mb_levenshtein:dev-master <?php
require_once ( ' vendor/autoload.php ' );
$ query = ' cafe ' ;
$ comps = [
' coffee ' ,
' café ' ,
' tea ' ,
' sake ' ,
];
echo " Query word: $ {query}" . PHP_EOL ;
foreach ( $ comps as $ comp ) {
$ sim = mb_levenshtein ( $ query , $ comp );
echo " $ {comp} : $ {sim}" . PHP_EOL ;
}结果:
$ ls
sample.php
$ composer require keinos/mb_levenshtein
Using version ^1.0 for keinos/mb_levenshtein
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Installing keinos/mb_levenshtein (1.0.0): Downloading (100%)
Writing lock file
Generating autoload files
$ # The smaller, the closer
$ php ./sample.php
Query word: cafe
coffee: 3
café: 1
tea: 4
sake: 2
$ ls
composer.json composer.lock sample.php vendor
$ cat composer.json
{
"require": {
"keinos/mb_levenshtein": "^1.0"
}
}