我需要在数组中使用PHP preg_grep()查找具有特定字母集和字符之前或之后的任何字符的数组元素。
我有一个像下面这样的数组
$findgroup = array("sten", "netff", "enet", "denet");
我需要从数组中找到具有'e,n,t'
个字符以及匹配字之前或之后(任一方,而不是两侧)的单个或双字符的值。如果我使用模式e,n,t
和之前或之后(任一方,而不是双方)搜索1个字母,结果将是array("sten", "enet")
,如果我使用模式e,n,t
和2个字母搜索之前或之后(任何一方,而不是双方)结果将是
array("netff", "denet")
我尝试使用以下代码但不起作用。
之前或之后的1个字母(任何一方,不是双方):
$result = preg_grep("/^(?:.{1}".$value."|".$value.".{1})$/", $findgroup);
之前或之后的2个字母(任何一方,不是双方):
$result = preg_grep("/^(?:.{2}".$value."|".$value.".{2})$/", $findgroup);
此处$value
是我的搜索模式数组,即array('e', 'n', 't')