在不包含PHP空间的情况下,在两个字符串中查找常用字母的优雅代码是什么?
还返回相似性索引,即计算公共字符的数量,并将其作为字符总数的百分比返回.
假设我有一个字符串“LEGENDARY”,而其他字符串为“BARNEY STINSON”,所以我需要在不包含空格的情况下找到公共字母b / w.
此外,我的代码应返回相似性索引,即计算公共字符的数量,并将其作为字符总数的百分比返回.
对于这两个字符串,常见字符为“ARNEY”,因此得分为5 / 22~ = 22%.对此有何帮助?
解决方法:
看similar_text()
.如果你想排除空格简单的str_replace(”,”,$string);之前.
echo similar_text ( 'LEGENDARY' , 'BARNEYSTINSON', $percent); // outputs 3
echo $percent; // outputs 27.272727272727
这是使用唯一字符的另一种方式
<?PHP
function unique_chars($string) {
return count_chars(strtolower(str_replace(' ', '', $string)), 3);
}
function compare_strings($a, $b) {
$index = similar_text(unique_chars($a), unique_chars($b), $percent);
return array('index' => $index, 'percent' => $percent);
}
print_r( compare_strings('LEGENDARY', 'BARNEY STINSON') );
// outputs:
?>
Array
(
[index] => 5
[percent] => 55.555555555556
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。