我有一个存储在变量
中的前缀$prefix = “07”;
并且昏迷分隔存储在另一个变量中的前缀列表(该列表由用户使用文本框提供)
$allPrefixes = “07,03,+17”;
检查$前缀中存储的值是否是存储在$ allPrefixes
中的前缀之一的有效方法是什么?答案 0 :(得分:0)
我要去正则表达式匹配:
$regex = "/(^|,)".$prefixe."(,|$)/";
preg_match($regex,$allPrefixes);
上述正则表达式将匹配,例如07
但不匹配007
。
一般知识,在这种情况下不适用:
如果007
不太可能出现,或者prefixe
不可能是任何其他prefixe
的子字符串,那么您可以使用strpos($allPrefixes, $prefixe) > -1
代替,这样效率会更高的
<强>然而强>
将$allPrefixes
字符串包装在,
之间并使用strpos可能既高效又准确:
strpos(",".$allPrefixes.",", ",".$prefixe.",")
将匹配07但不匹配007