Similar String
Find level of similarity between strings based on Dice's Coefficient., (*1)
Installation
Install the package by running, (*2)
$ composer require aheenam/similar-string
Usage
This package contains two classes, one for calculating Dice's Coefficient of two strings and another working with this value., (*3)
Dice's Coefficient
<?php
use Aheenam\SimilarString\Dice;
(new Dice)('night', 'nacht') // returns 0.25
(new Dice)('abcd', 'abcd') // returns 1
(new Dice)('qwerty', 'asdf') // returns 0
Similar Strings
This class provides 2 different methods:, (*4)
orderBySimilarity($string, $similarStrings = [])
This method orders the strings in $similarStrings
by their Dice-Coefficient when compared to $string
, (*5)
<?php
use Aheenam\SimilarString\SimilarString;
(new SimilarString)->orderBySimilarity('nacht', ['night', 'abcde', 'lacht']);
// returns ['lacht', 'night', 'abcde']
findMostSimilar($string, $similarStrings = [])
This methods returns the best match for $string
out of $similarStrings
, (*6)
<?php
use Aheenam\SimilarString\SimilarString;
(new SimilarString)->findMostSimilar('nacht', ['night', 'abcde', 'lacht']);
// returns 'lacht'
Changelog
Check CHANGELOG for the changelog, (*7)
Testing
To run tests use, (*8)
$ composer test
If you are working on a windows machine use, (*9)
vendor\bin\phpunit
Contributing
Information will follow soon, (*10)
Security
If you discover any security related issues, please email rathes@aheenam.com or use the issue tracker of GitHub., (*11)
About
Aheenam is a small company from NRW, Germany creating custom digital solutions. Visit our website to find out more about us., (*12)
License
The MIT License (MIT). Please see License File for more information., (*13)