An helper to compare similarity of keywords or list of keyword.
You will still need to a make a final call which helper(s) to use and how to configure them.
This package is intended to be used with PHPScraper.
This project is sponsored by:
Want to sponsor this project? Contact me.
composer require spekulatius/keyword-merge
Here are a few impressions on the way the library works:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator;
$kwcmp->matchesWord('tbilisi georgia', 'is tbilisi the capital of georgia?');
// false
$kwcmp->containsWord('tbilisi georgia', 'is tbilisi the capital of georgia?');
// true
$kwcmp->similarWord('tbilisi georgia', 'georgias tbilisi');
// true
You call also use arrays with correlated methods:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator;
$kwcmp->matchesWords('tbilisi georgia', 'is tbilisi the capital of georgia?');
// []
$kwcmp->containsWords('tbilisi georgia', 'is tbilisi the capital of georgia?');
// ['is tbilisi the capital of georgia?']
$kwcmp->similarWords('tbilisi georgia', 'georgias tbilisi');
// ['georgias tbilisi']
The library can also test for keywords in the URL path:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator;
$kwcmp->inUrlPath('https://example.com/cats-are-awesome', 'seo tools');
// false
$kwcmp->inUrlPath('https://example.com/seo-tools', 'seo tools');
// true
$kwcmp->inUrlPath('https://example.com/chrome-seo-tools', 'chrome seo tools and toolkit');
// true - one word difference is accepted, from 3+ words
Further example and cases can be found in the tests!