Escolar Documentos
Profissional Documentos
Cultura Documentos
}
else{
//existearrobanotexto,eestanaposio$existe
}
?>
O valor retornado poder variar cada vez que atualizar a pgina, pois
o processador pode estar processando outras threads, o retorno
mdio no meu computador foi de (0.058 segundos) para encontrar a
primeira ocorrncia de arroba na varivel "ola@mundo".
Calculando o tempo gasto na checagem de padro usando
Expresses Regulares:
<?php
ob_start();
1) O metacaracter circunflexo ^:
O circunflexo representa o comeo da string. Por exemplo, se
quisermos saber se determinado texto comea com 'abc' poderemos
prosseguir da seguinte maneira:
<?php
// Texto alvo
$texto = "abcdefgh";
// Ao adicionarmos o modificador i no final dizemos
// que a comparao deve ser case-insensitive
$er = '/^abc/i';
if(preg_match($er,$texto)) {
echo "Comea com abc";
}
else {
echo "No comea com abc";
}
?>
2) O metacaracter ponto . :
O ponto implica no fato de aceitar qualquer caracter em determinada
posio. Por exemplo, se fossemos brincar com a palavra PHP
aceitando como vlido o H ser qualquer coisa, P(qualquer caracter)P
faremos:
<?php
$texto = "PUP";
$er = '/P.P/i';
if(preg_match($er,$texto))
echo "PUP vlido com o padro estabelecido pela ERs";
else
echo "PUP no vlido com o padro estabelecido pela ERs";
?>
3) O metacaracter Cifro $:
Semelhante ao circunflexo, porm atua na verificao no final da
string, se quisermos saber se alm de comear com 'abc' a string
termina com 'xyz' poderemos prosseguir da seguinte maneira:
<?php
$texto = "abcxyz";
$er = '/^(abc)(xyz)$/i';
echo (preg_match($er,$texto))? 'vlido' : 'invlido';
?>
Sendo assim, agora podemos permitir mais valores entre 'abc' e 'xyz'
com a ajuda do metacaracter ponto que aceita qualquer coisa e
usando multiplicidade, poderemos prosseguir da seguinte maneira:
<?php
$texto = "abcdefghijkmnopqrstuvwxyz";
// Indicamos que alm de comear com abc e
// terminar com xyz, poder existir 0 (zero) ou
// mais caracteres nesse intervalo
$er = '/^abc(.*)xyz$/i';
echo (preg_match($er,$texto))? 'vlido' : 'invlido';
?>
$texto = "http://www.rafaelcapucho.com";
$er = '/^(http:|https:|ftp:)/i';
echo (preg_match($er,$texto))? 'vlido' : 'invlido';
?>
^(http:|https:|ftp:) em Python:
import re
texto = 'http://www.rafaelcapucho.com'
// re.match para comparao re.match(Padrao,String,[bandeiras])
if(re.match('^(http:|https:|ftp:)',texto,re.IGNORECASE)):
print('vlido')
else:
print('invlido')
<?php
$texto = "palavra@provedor.com";
$er = '/(.+)@(.+)\.(.+)/i';
echo (preg_match($er,$texto))? 'vlido' : 'invlido';
?>
(.+)@(.+)\.(.+) em Python:
import re
texto = 'palavra@provedor.com'
// re.match para comparao re.match(Padrao,String,[bandeiras])
if(re.match('(.+)@(.+)\.(.+)',texto,re.IGNORECASE)):
print('email vlido')
else:
print('email invlido')
<?php
$texto = "texto1<strong>texto2</strong>texto3";
$er = '/<.+?>/i';
// Funo preg_replace(pattern, replacement, subject [, limit ]);
echo $novoTexto = preg_replace($er,"",$texto);
?>