【发布时间】:2013-09-17 10:06:01
【问题描述】:
我试图弄清楚如何解决以下问题
$str = 'asus company';
$brands = "asus|lenovo|dell";
我想比较两个字符串变量并检索匹配的子字符串。所需的输出是'asus'。
我知道我可以使用 php 中的 strtr 函数,但这个函数只返回一个布尔值。我也需要字符串。
【问题讨论】:
-
您的字符串格式是否始终相同?如果是这样,我建议您使用 ` ` 和
|解析字符串并将其保留为数组。之后,您可以轻松地使用in_array()来检查是否匹配。 -
如果您总是使用相同的“|”,请参阅 Jari 的答案以获得快速和简单的方法单独的品牌列表。如果你想在字符串中找到匹配的模式,你可以使用后缀树。
-
是的,品牌将采用相同的格式。我将尝试使用 Jaris 提示。
-
我回复晚了,但是如果您认为 $str 可能包含逗号或其他内容,请查看我的解决方案 xD
-
非常感谢@aleation。不错!