Exercicis
Exercici 1: Extracció de dominis de correu electrònic
Objectiu: Crear un programa que extraga tots els dominis de correu electrònic (la part després del @
) d’un text i mostrar-los per consola.
Detalls:
- Utilitza una expressió regular per identificar les adreces de correu electrònic dins d’un text.
- Utilitza els mètodes
find()
igroup()
per a extreure i mostrar només la part del domini.
Exemple d’entrada:
String text = "Els meus correus són joan@gmail.com, maria@universitat.es i pere@empresa.net";
Exemple de sortida:
Dominis trobats:
gmail.com
universitat.es
empresa.net
Exercici 2: Validació de números de targeta de crèdit
Objectiu: Escriure un programa que valide números de targeta de crèdit seguint un patró bàsic: quatre grups de quatre dígits separats per un guió (-
) o un espai (
).
Detalls:
- La expressió regular ha de permetre tant números amb guions com amb espais, però no barrejats.
- Utilitza
matches()
per verificar si el número és vàlid.
Exemple d’entrada:
String numero = "1234-5678-9123-4567";
Exemple de sortida:
El número de targeta és vàlid.
Exercici 3: Compta les paraules d’una frase
Objectiu: Crear un programa que conte quantes paraules té una frase utilitzant expressions regulars.
Detalls:
- Una paraula es defineix com qualsevol seqüència de caràcters alfabètics (
[A-Za-z]+
). - Utilitza
find()
per comptar el nombre de paraules que compleixen amb aquest patró.
Exemple d’entrada:
String frase = "Això és un exercici senzill de Java.";
Exemple de sortida:
La frase té 6 paraules.
Aquí tens exemples de cadenes regex per a cadascun dels exercicis:
Extracció de dominis de correu electrònic:
Regex: (?<=@)[A-Za-z0-9.-]+\\.[A-Za-z]{2,}
- Explicació:
(?<=@)
: Assegura que la coincidència apareix després d’un@
(això és un lookbehind, que busca però no captura el@
).[A-Za-z0-9.-]+
: Coincideix amb una seqüència de caràcters alfanumèrics, punts (.
) i guions (-
).\\.[A-Za-z]{2,}
: Assegura que després del domini hi haja un punt (.
) seguit de dues o més lletres (com.com
o.es
).
Validació de números de targeta de crèdit
Regex: ^(\\d{4}[- ]){3}\\d{4}$
- Explicació:
^
i$
: Marquen l’inici i el final de la cadena, assegurant que tota la cadena ha de coincidir amb el patró.(\\d{4}[- ]){3}
: Coincideix amb tres grups de quatre dígits (\\d{4}
), cadascun seguit per un guió (-
) o un espai (\\d{4}
: Assegura que hi haja un últim grup de quatre dígits sense cap separador al final.
Exercici 3: Compta les paraules d’una frase
Regex: [A-Za-zÀ-ÿ]+
- Explicació:
[A-Za-zÀ-ÿ]+
: Coincideix amb qualsevol seqüència de caràcters alfabètics, incloent lletres amb accents (À-ÿ
).- El
+
assegura que trobem una o més lletres consecutives (definint una paraula).