Ejemplos cadenas y expresiones regulares

<?php
 $cadena = "Hola que tal?";
 $buscar = "Ho";
 echo strpos($cadena, "Ho"); //Devuelve 0
 echo strpos($cadena, "ho"); //Devuelve false
 echo stripos($cadena, "ho"); //Devuelve 0 (case insensitive)
 echo strpos($cadena, "Pepe"); //Devuelve false
 echo strpos($cadena, "la"); //Devuelve 2

if (strpos($cadena, "WW") === false) {
 echo "NO está";
 }
 if (strpos($cadena, "Ho") === false) {
 echo "NO está";
 }

//$substring = substr($string, $start, $length);
 $codigo = 'ABCD123456';
 $parte = substr($codigo, 0, 4); //$parte='ABCD'
 $parte = substr($codigo, 4, 4); //$parte='1234'
 $parte = substr($codigo, 4); //$parte='123456'
 $parte = substr($codigo, -4); //$parte='3456'

echo strlen($codigo); //Longitud de una cadena

echo str_word_count($cadena);

print ucfirst("how do you do today?"); //Primera letra
 print ucwords("the prince of wales"); //primera letra de cada palabra
 print strtoupper("i'm not yelling!"); //mayúsculas
 print strtolower('one'); // minúsculas
 $cadena = "Hola que tal?";
 echo str_replace("la", "lalala", $cadena);
 echo str_ireplace("La", "lalala", $cadena);

echo trim(" hola que tal "); //Quita espacios alrededor
 echo strrev($cadena); //Le da la vuelta a la cadena

function esMail($cadena) {
 $pos1 = strpos($cadena, "@");
 $pos2 = strpos($cadena, ".");
 if ($pos1 === false || $pos2 === false) {
 return false;
 }
 if ($pos1 > $pos2) {
 return false;
 }
 return true;
 }

function esMail2($cadena) {
 $pos1 = strpos($cadena, "@");
 $pos2 = strrpos($cadena, ".");
 return $pos1 !== false && $pos2 !== false && $pos2 > $pos1;
 }

function esMail3($cadena) {
 return preg_match("/.+@.+\..+/", $cadena);
 }

echo "<hr>";
 echo var_dump(esMail("pepe@pepe.com"));
 echo var_dump(esMail("hola que tal"));
 echo var_dump(esMail("pepe.pepe@com"));
 echo "<hr>";
 echo var_dump(esMail3("pepe@pepe.com"));
 echo var_dump(esMail3("hola que tal"));
 echo var_dump(esMail3("pepe.pepe@com"));
 echo "<hr>";

$string = "Hola que 454 56tal 667 php89 es pooop";
 preg_match_all("/[0-9]{2,3}/", $string, $matches);
 var_dump($matches); // hla

$cp1 = "08001";
 $cp2 = "009";

var_dump(preg_match("/[0-9]{5}/", $cp1));
 var_dump(preg_match("/[0-9]{5}/", $cp2));

echo "El alcalde de l'hospitalet ha dicho \"No dimitiré\"";
 echo "<div onclick='saludo(\"hola\")'>";

function emailValidation($email) {
 $regex = "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,10})$/";
 $email = strtolower($email);

return preg_match($regex, $email);
 }
 ?>