4

我想比较三个字符串:

"a text string" //target string
"a kind of similar text string"
"the cow jumps over the moon"

并设置一个百分比参数,返回与目标相似 x% 的结果。

$results = compare($array,$target,80)

$results // Returns an array with str 1,2, because they are at least 80 similar to the target.

另外,在 JavaScript 或 jQuery 中是否可能有类似的功能?

4

2 回答 2

5

在 PHP 中,有函数similar_text. 至于 JavaScript,有PHP.js 项目,它在 JavaScript 中重新实现 PHP 函数。他们有一个similar_text你可以使用的实现。

JavaScript 实现似乎不支持百分比参数。

于 2012-04-13T21:23:21.660 回答
3

您正在寻找的功能是similar_text

它需要一个可选的第三个参数(通过引用传递)放置百分比差异。

在您的情况下,应该执行以下操作:

// 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);
}
于 2012-04-13T21:23:38.147 回答