比较两个字符串并找到多个匹配项
Compare two strings and find multiple matches
我有两个要比较的字符串和 return 找到的出现次数。
例如
$string = "123,456,789";
$find = "123,657,456";
如果函数正确,这应该 return "2"
我试过了
echo substr_count($string,$find);
其中 return 是“0”,但是如果 $find = “123” 那么它将 return “1”
我知道如果我使用循环并分别检查每 3 个数字我可以做到这一点,但我想避免使用循环以提高可读性(我已经使用了很多循环)。
是否可以使用任何现有功能或一个衬里?还是我必须创建自己的辅助函数或循环?
易于使用数组:
echo count(array_intersect(explode(',', $string), explode(',', $find)));
我有两个要比较的字符串和 return 找到的出现次数。
例如
$string = "123,456,789";
$find = "123,657,456";
如果函数正确,这应该 return "2"
我试过了
echo substr_count($string,$find);
其中 return 是“0”,但是如果 $find = “123” 那么它将 return “1”
我知道如果我使用循环并分别检查每 3 个数字我可以做到这一点,但我想避免使用循环以提高可读性(我已经使用了很多循环)。
是否可以使用任何现有功能或一个衬里?还是我必须创建自己的辅助函数或循环?
易于使用数组:
echo count(array_intersect(explode(',', $string), explode(',', $find)));