【发布时间】:2020-08-07 07:47:41
【问题描述】:
我有一组颜色,即 array("Purple","Yellow","Pink","White","Blue","Red","Black");
我想搜索一个字符串,例如“Black Ford Mondeo”,并从该字符串返回一个包含所有匹配颜色的数组,在这种情况下它只包含黑色
有什么建议吗?
【问题讨论】:
-
explode + array_intersect
我有一组颜色,即 array("Purple","Yellow","Pink","White","Blue","Red","Black");
我想搜索一个字符串,例如“Black Ford Mondeo”,并从该字符串返回一个包含所有匹配颜色的数组,在这种情况下它只包含黑色
有什么建议吗?
【问题讨论】:
使用preg_match_all,给它一个数组引用来填充匹配的颜色。
$colors = ["Purple","Yellow","Pink","White","Blue","Red","Black"];
$regexp = '/' . implode('|', $colors) . '/';
$matches = [];
preg_match_all($regexp, 'Black Ford Mondeo', $matches);
var_dump($matches);
【讨论】: