我需要在数组中使用PHP preg_grep()
查找单词之前或之后的任何字符。我有一个像下面这样的数组
$findgroup = array("aphp", "phpb", "dephpfs", "potatoes");
我需要从数组中找到值'php'之前或之后(双方,而不是双方)单词或双字符的'php'单词的值。结果应该是数组中的'aphp','phpb'字。
我尝试使用以下代码但不起作用。
$result[] = preg_grep("/(.{1})php(.{1})/", $findgroup);
答案 0 :(得分:2)
锚定你的正则表达式,并为之前和之后的角色添加量词:
$findgroup = array("aphp", "phpb", "dephpfs", "potatoes", "aphpb", "php");
$result = preg_grep("/^(?:.{1,2}php|php.{1,2})$/", $findgroup);
print_r($result);
<强>输出:强>
Array
(
[0] => aphp
[1] => phpb
)