Skip to content

Commit c145198

Browse files
authored
Merge pull request mouredev#6925 from Glitzypanic/solucion
#16 - JavaScript
2 parents 374ab6c + 38e1b44 commit c145198

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
/*
2+
* EJERCICIO:
3+
* Utilizando tu lenguaje, explora el concepto de expresiones regulares,
4+
* creando una que sea capaz de encontrar y extraer todos los números
5+
* de un texto.
6+
*
7+
* DIFICULTAD EXTRA (opcional):
8+
* Crea 3 expresiones regulares (a tu criterio) capaces de:
9+
* - Validar un email.
10+
* - Validar un número de teléfono.
11+
* - Validar una url.
12+
*/
13+
14+
// Mejor eleccion cuando se utiliza el patrón constante
15+
let re = /zcb/;
16+
17+
// Mejor cuando el patrón puede variar o proviene de una entrada dinámica
18+
let red = new RegExp("vbn");
19+
20+
// Método Test para comprobar si hay coincidencias y arrojar un boolean
21+
let test = /hola/.test("hola mundo"); // true
22+
23+
// Método exec() busca coincidencias y devuelve un array con los resultados o un null si no hay coincidencias
24+
let result = /hola/.exec(
25+
"hola mundo"
26+
) // Métodos del objeto "String"
27+
`match()` // Busca coincidencias en una cadena y devuelve un array.
28+
`replace()` // Reemplaza las coincidencias encontradas con otro texto.
29+
`search()` // Busca una coincidencia y devuelve la posicion de la primera aparición.
30+
`split()`; // Divide una cadena en un arreglo usando la expresión regular como delimitador.
31+
32+
// Ejercicio 1
33+
let phoneNumber = "Hola, mi numero de telefono es +569 1234567";
34+
let regex = /(\d+)/g;
35+
36+
let newNumber = phoneNumber.match(regex);
37+
38+
console.log(newNumber);
39+
40+
// Ejercicio 2
41+
42+
// Validar un email
43+
function validarEmail(email) {
44+
const regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
45+
return regex.test(email);
46+
}
47+
48+
const emailPrueba = "[email protected]";
49+
if (validarEmail(emailPrueba)) {
50+
console.log("El email es valido");
51+
} else {
52+
console.log("El email es invalido");
53+
}
54+
55+
// Validar un número telefónico
56+
function validarTelefono(phone) {
57+
const regex = /\d/g;
58+
return regex.test(phone);
59+
}
60+
61+
const telefono = "926333333";
62+
if (validarTelefono(telefono)) {
63+
console.log("El telefono es valido");
64+
} else {
65+
console.log("El numero telefonico es invalido");
66+
}
67+
// Validar una url
68+
const isValidURL = (urlString) => {
69+
return patronURL.test(urlString);
70+
};
71+
72+
console.log(isValidURL("https://www.ejemplo.com")); // true
73+
console.log(isValidURL("ftp://www.ejemplo.com")); // false

0 commit comments

Comments
 (0)