(PHP 4, PHP 5)
ereg — Casando expressões regulares
Verifica se a variavel casa com a expressão regular definida em expressao em um modo sensível a distinção de caracteres (case sensitive).
A expressão regular case sensitive.
A string de entrada.
Se existirem parênteses de substrings no pattern e for passado o terceiro parâmetro regs para a função, a execução guardará os elementos resultantes na matriz regs.
$registros[1] irá conter a substring indicada pelo primeiro parenteses da esquerda; $registros[2] contém a segunda substring, e assim por diante. $registros[0] conterá uma cópia completa da variável casada.
Retorna o tamanho da string encontrada se uma combinação de pattern foi encontrado em string, ou FALSE se nenhuma combinação foi feita ou um erro que tenha ocorrido.
Se o parâmetro opcional regs não foi passado ou o tamanho da string casada é 0, esta função retorna 1.
Exemplo #1 Exemplo da ereg()
O exemplo seguinte pega uma data no padrão ISO (YYYY-MM-DD) e imprime na no formato DD.MM.YYYY:
<?php
if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $data, $registros)) {
echo "$registros[3].$registros[2].$registros[1]";
} else {
echo "Formato de data inválido: $data";
}
?>
Nota: preg_match(), que usa a sintaxe de expressão regular compatível com Perl, é normalmente uma rápida alternativa para ereg().
Nota: Nas versões superiores ao PHP 4.1.0 (inclusive) se você colocar exatamente dez elementos em $registros, ou até mesmo mais elementos, a expressão será executada. A quantidade não causará efeitos na função ereg() que tem habilidade de suportar muitas substrings. Se a expressão não casar, $registros não será alterada por ereg().