oefenweb/damerau-levenshtein 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

oefenweb/damerau-levenshtein

最新稳定版本:v3.0.2

Composer 安装命令:

composer require oefenweb/damerau-levenshtein

包简介

Get text similarity level with Damerau-Levenshtein distance

README 文档

README

CI PHP 7 ready codecov Packagist downloads Code Climate Scrutinizer Code Quality

Get text similarity level with Damerau-Levenshtein distance.

Requirements

  • PHP 7.1.0 or greater.

Installation

composer require oefenweb/damerau-levenshtein

Usage

$pattern = 'foo bar';
$string  = 'fuu baz';

$damerauLevenshtein = new DamerauLevenshtein($pattern, $string);

$damerauLevenshtein->getSimilarity(); // absolute edit distance; == 3

$damerauLevenshtein->getRelativeDistance(); // relative edit distance; == 0.57142857142857

$damerauLevenshtein->getMatrix(); // get complete distance matrix
/* ==
 * [
 *   [0,1,2,3,4,5,6,7],
 *   [1,0,1,2,3,4,5,6],
 *   [2,1,1,2,3,4,5,6],
 *   [3,2,2,2,3,4,5,6],
 *   [4,3,3,3,2,3,4,5],
 *   [5,4,4,4,3,2,3,4],
 *   [6,5,5,5,4,3,2,3],
 *   [7,6,6,6,5,4,3,3],
 * ]
 */

$damerauLevenshtein->displayMatrix(); // get readable and formatted distance matrix
/*
 *   '  foo bar' . PHP_EOL
 * . ' 01234567' . PHP_EOL
 * . 'f10123456' . PHP_EOL
 * . 'u21123456' . PHP_EOL
 * . 'u32223456' . PHP_EOL
 * . ' 43332345' . PHP_EOL
 * . 'b54443234' . PHP_EOL
 * . 'a65554323' . PHP_EOL
 * . 'z76665433'
 */

Different costs are supported by the constructor and getters / setters.

Character comparison (equal check) can easily be overridden by parent class (see DamerauLevenshtein::compare).

For more examples look at /tests/DamerauLevenshteinTest.php or RTFC.

License

MIT

Author Information

Mischa ter Smitten (based on work of Ph4r05)

统计信息

  • 总下载量: 248.58k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 43
  • 点击次数: 1
  • 依赖项目数: 4
  • 推荐数: 0

GitHub 信息

  • Stars: 41
  • Watchers: 5
  • Forks: 9
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2014-08-20