-
Notifications
You must be signed in to change notification settings - Fork 0
/
04 - CADENAS DE CARACTERES.js
124 lines (104 loc) · 3.9 KB
/
04 - CADENAS DE CARACTERES.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/*
* EJERCICIO:
* Muestra ejemplos de todas las operaciones que puedes realizar con cadenas de caracteres
* en tu lenguaje. Algunas de esas operaciones podrían ser (busca todas las que puedas):
* - Acceso a caracteres específicos, subcadenas, longitud, concatenación, repetición, recorrido,
* conversión a mayúsculas y minúsculas, reemplazo, división, unión, interpolación, verificación...
*
* DIFICULTAD EXTRA (opcional):
* Crea un programa que analice dos palabras diferentes y realice comprobaciones
* para descubrir si son:
* - Palíndromos
* - Anagramas
* - Isogramas
*/
// Acceso a caracteres específicos, subcadenas, longitud, concatenación, repetición, recorrido, conversión a mayúsculas y minúsculas, reemplazo, división, unión, interpolación, verificación...
// Acceso a caracteres específicos
let cadena = "Hola mundo";
console.log(cadena[0]); // H
console.log(cadena.charAt(0)); // H
// Subcadenas
console.log(cadena.substring(0, 4)); // Hola
console.log(cadena.slice(0, 4)); // Hola
console.log(cadena.substr(0, 4)); // Hola
// Longitud
console.log(cadena.length); // 10
// Concatenación
let cadena2 = " desde JavaScript";
console.log(cadena + cadena2); // Hola mundo desde JavaScript
// Repetición
console.log(cadena.repeat(3)); // Hola mundoHola mundoHola mundo
// Recorrido
for (let i = 0; i < cadena.length; i++) {
console.log(cadena[i]);
}
// Conversión a mayúsculas y minúsculas
console.log(cadena.toUpperCase()); // HOLA MUNDO
console.log(cadena.toLowerCase()); // hola mundo
// Reemplazo
console.log(cadena.replace("mundo", "JavaScript")); // Hola JavaScript
// División
console.log(cadena.split(" ")); // ["Hola", "mundo"]
// Unión
console.log(["Hola", "mundo"].join(" ")); // Hola mundo
// Interpolación
let nombre = "Mundo";
console.log(`Hola ${nombre}`); // Hola Mundo
// Verificación
console.log(cadena.includes("Hola")); // true
console.log(cadena.startsWith("Hola")); // true
console.log(cadena.endsWith("mundo")); // true
console.log(cadena.indexOf("mundo")); // 5
console.log(cadena.lastIndexOf("o")); // 7
console.log(cadena.search("mundo")); // 5
console.log(cadena.match(/o/g)); // ["o", "o"]
console.log(cadena.match(/o/g).length); // 2
console.log(cadena.match(/o/gi)); // ["o", "o"]
console.log(cadena.match(/o/gi).length); // 2
console.log(cadena.match(/o/gi).join("")); // oo
console.log(cadena.match(/o/gi).reverse().join("")); // oo
console.log(
cadena.match(/o/gi).reverse().join("") === cadena.match(/o/gi).join("")
); // true
console.log(
cadena.match(/o/gi).reverse().join("") === cadena.match(/o/gi).join("")
); // true
console.log(
cadena.match(/o/gi).reverse().join("") === cadena.match(/o/gi).join("")
); // true
// Ejercicio extra:
// Crea un programa que analice dos palabras diferentes y realice comprobaciones
// para descubrir si son:
// - Palíndromos
// - Anagramas
// - Isogramas
// Palíndromos
function esPalindromo(palabra) {
return palabra === palabra.split("").reverse().join("");
}
console.log(esPalindromo("oso")); // true
console.log(esPalindromo("reconocer")); // true
console.log(esPalindromo("hola")); // false
// Anagramas
function esAnagrama(palabra1, palabra2) {
return (
palabra1.split("").sort().join("") === palabra2.split("").sort().join("")
);
}
console.log(esAnagrama("roma", "amor")); // true
console.log(esAnagrama("hola", "mundo")); // false
// Isogramas
function esIsograma(palabra) {
return palabra.length === new Set(palabra).size;
}
console.log(esIsograma("murcielago")); // true
console.log(esIsograma("hola")); // false
console.log(esIsograma("mundo")); // true
console.log(esIsograma("oso")); // false
console.log(esIsograma("reconocer")); // false
console.log(esIsograma("roma")); // true
console.log(esIsograma("amor")); // true
console.log(esIsograma("hola")); // true
console.log(esIsograma("mundo")); // true
console.log(esIsograma("hola mundo")); // false
console.log(esIsograma("hola mundo".replace(" ", ""))); // true