A função preg_filter é usada para realizar uma pesquisa e substituição de expressões regulares.
preg_filter misto (padrão $ misto, substituição $ mista, assunto $ misto [, int $ limite = -1 [, int &$ contagem]])
preg_filter() é equivalente a preg_replace(), mas retorna apenas resultados que correspondem ao destino.
Descrição do parâmetro:
$pattern: O padrão a ser pesquisado. Pode ser uma string ou um array de strings.
$replacement: String ou array de strings usadas para substituição.
$subject: A string ou array de strings a serem pesquisadas e substituídas.
$limit: Opcional, o número máximo de substituições por padrão em cada assunto. O padrão é -1 (ilimitado).
$count: Opcional, o número de substituições concluídas.
O resultado da execução é o seguinte:
valor de retorno preg_filter: Array( [0] => A:C:1 [1] => B:C:a [2] => A:2 [3] => B:b [4] => A:3 [7] => A:4)preg_replace valor de retorno: Array( [0] => A:C:1 [1] => B:C:a [2] => A:2 [3] => B: b [4] => A:3 [5] => A [6] => B [7] => A:4)
Pode-se ver que preg_filter retorna apenas os resultados correspondentes, e os não correspondentes são ignorados diretamente, enquanto preg_replace também retorna os elementos 'A' e 'B' dos resultados não correspondentes juntos.