Solucions exercicis expressions regulars¶
Aquí tens possibles solucions per als cinc exercicis amb expressions regulars en PHP:
Solució exercici 1: Validació de Correu Electrònic
function validarEmail($email) {
return preg_match('/^[\w\.-]+@[\w\.-]+\.[a-zA-Z]{2,6}$/', $email);
}
// Exemple d'ús
$email = "exemple@domini.com";
if (validarEmail($email)) {
echo "El correu electrònic és vàlid.";
} else {
echo "El correu electrònic no és vàlid.";
}
Solució exercici 2: Extracció de Números de Telèfon
function extreureNumerosTelefon($text) {
preg_match_all('/\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}/', $text, $matches);
return $matches[0];
}
// Exemple d'ús
$text = "Contacta'ns al (123) 456-7890 o 123-456-7890.";
$numeros = extreureNumerosTelefon($text);
print_r($numeros);
Solució exercici 3: Validació de Contrasenyes
function validarContrasenya($contrasenya) {
return preg_match('/^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[!@#$%^&*]).{8,}$/', $contrasenya);
}
// Exemple d'ús
$contrasenya = "Exemple1!";
if (validarContrasenya($contrasenya)) {
echo "La contrasenya és vàlida.";
} else {
echo "La contrasenya no és vàlida.";
}
Solució exercici 4: Extracció de URLs
function extreureURLs($text) {
preg_match_all('/\b(?:https?:\/\/|www\.)\S+\b/', $text, $matches);
return $matches[0];
}
// Exemple d'ús
$text = "Visita https://www.exemple.com o www.exemple.org per més informació.";
$urls = extreureURLs($text);
print_r($urls);
Solució exercici 5: Substitució de Paraules Prohibides
function substituirParaulesProhibides($text, $paraules_prohibides) {
$pattern = '/\b(' . implode('|', $paraules_prohibides) . ')\b/i';
return preg_replace($pattern, '****', $text);
}
// Exemple d'ús
$text = "Aquest text conté paraules prohibides com exemple i prova.";
$paraules_prohibides = ['exemple', 'prova'];
$text_nou = substituirParaulesProhibides($text, $paraules_prohibides);
echo $text_nou;