Eso coincidirá ya que existe “ca” dentro de “casa” si ese string fuera cambiado a “oca”, “coca” etc.. seguiría coincidiendo, ahora, si cambiara a “Casa”, no coincidiría mas, ya que hace el distintivo de mayúsculas y minúsculas, para esto usaremos un modificador ( la vedad no se como se llaman , pero yo los llamaré así) , añadiremos “i” después de el ultimo delimitador:
<?php
if( preg_match(”/ca/i”, “Casa”)){
echo “Coincide”;
}
else{
echo “No coincide”;
}
?>
Ahora si dará “Coincide” ya que con el modificador “i”, logra que no se haga la distinción entre mayúsculas y minúsculas. Veamos ahora, algo importante, en expresiones regulares ciertos caracteres representan algo especifico, algunos de los mas usados serian:
[ ] ( ) . * ? ^ $ |
Veremos dos primero:
^ Que representa el principio de un patrón y $ que representa el final, si a nuestro ejemplo cambiamos el patrón a: $patron = “/^ca/”
Y lo probamos, solo mostrara una coincidencia a las palabras que inicien con “ca” , “casa” , “campo” etc..
Si lo cambiamos a: $patron = “/ca$/”
Tomara solo las que terminen en “ca” , “oca” , “coca” , etc y por ultimo, si lo cambiamos a:
$patron “/^ca$/”
Dará solo coincidencia en “ca” ya que expone un inicio y un fin de cadena.
Si queremos buscar una cadena con un carácter especial, por ejemplo una cantidad, buscar el signo de $ , ahí que anteponer un backslash antes ( $ ).
Tags:
EE.RR,
expresiones,
Patrones,
PHP,
regulares,
tutorial