I want to compare three strings:
"a text string" //target string
"a kind of similar text string"
"the cow jumps over the moon"
And set a percentage parameter that returns the results that are x% similar to the target.
$results = compare($array,$target,80)
$results // Returns an array with str 1,2, because they are at least 80 similar to the target.
Also, is a similar function possible in JavaScript or jQuery?
In PHP, there is the function similar_text
. As for JavaScript, there's the PHP.js project, which re-implements PHP functions in JavaScript. They have an implementation of similar_text
you can use.
The JavaScript implementation doesn't support the percent parameter, it seems.
The function you're looking for is similar_text.
It takes an optional 3rd parameter (passed by reference) where the percentage difference is placed.
In your situation, the following should do:
// Returns true if $str1 is at least $pct similar to $str2, otherwise false.
function compare($str1, $str2, $pct)
{
$p = 0;
similar_text($str1, $str2, $p);
return ($p >= $pct);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With