Skip to content

Commit 5b9b062

Browse files
authored
Merge pull request mouredev#4823 from DanielBustos342/04-CADENAS-DE-CARACTERES
[04-CADENAS-DE-CARACTERES] - [js]
2 parents e0ac43a + 83c0c33 commit 5b9b062

File tree

1 file changed

+141
-0
lines changed

1 file changed

+141
-0
lines changed
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
//! Operaciones con cadenas
2+
3+
//* Concatenacion de cadenas
4+
let str1 = "Hola";
5+
let str2 = "Mundo";
6+
let result = str1 + " " + str2; // "Hola Mundo"
7+
8+
//* Acceso a caracteres
9+
let str = "JavaScript";
10+
let char = str[0]; // "J"
11+
let charAt = str.charAt(0); // "J"
12+
13+
//* Longitud de una cadena
14+
let string = "Hola Mundo";
15+
let length = string.length; // 10
16+
17+
//* Cambio de mayusculas a minusculas
18+
let str3 = "Hola Mundo";
19+
let upperCase = str3.toUpperCase(); // "HOLA MUNDO"
20+
let lowerCase = str3.toLowerCase(); // "hola mundo"
21+
22+
//* Extraccion de subcadenas
23+
let str4 = "Hola Mundo";
24+
let substring = str4.substring(0, 4); // "Hola"
25+
let slice = str4.slice(5); // "Mundo"
26+
27+
//* Division de una cadena
28+
let str5 = "Hola Mundo";
29+
let split = str5.split(" "); // ["Hola", "Mundo"]
30+
31+
//* Reemplazo de texto
32+
let str6 = "Hola Mundo";
33+
let replaced = str6.replace("Mundo", "JavaScript"); // "Hola JavaScript"
34+
35+
//* Busqueda de texto
36+
let str7 = "Hola Mundo";
37+
let indexOf = str7.indexOf("Mundo"); // 5
38+
let includes = str7.includes("Mundo"); // true
39+
40+
//* Eliminar espacios en blanco
41+
let str8 = " Hola Mundo ";
42+
let trimmed = str8.trim(); // "Hola Mundo"
43+
44+
//* Repetir cadenas
45+
let str9 = "Hola";
46+
let repeated = str9.repeat(3); // "HolaHolaHola"
47+
48+
//* Conversion de una cadena en un arreglo de caracteres
49+
let str10 = "Hola";
50+
let array = Array.from(str10); // ["H", "o", "l", "a"]
51+
52+
//* Verificacion de inicio y final de una cadena
53+
let str11 = "Hola Mundo";
54+
let startsWith = str11.startsWith("Hola"); // true
55+
let endsWith = str11.endsWith("Mundo"); // true
56+
57+
//* Interpolacion de cadenas (template literals)
58+
let nombre = "Juan";
59+
let saludo = `Hola, ${nombre}`; // "Hola, Juan"
60+
61+
//* Obtener codigo de caracter
62+
let str12 = "A";
63+
let charCode = str12.charCodeAt(0); // 65
64+
65+
//* Recorrido
66+
let str13 = "JavaScript";
67+
for (let i = 0; i < str13.length; i++) {
68+
console.log(str13[i]);
69+
}
70+
// J
71+
// a
72+
// v
73+
// a
74+
// S
75+
// c
76+
// r
77+
// i
78+
// p
79+
// t
80+
81+
//* Union
82+
let arr = ["Hola", "Mundo"];
83+
let joined = arr.join(" "); // "Hola Mundo"
84+
85+
//! Ejercicio Extra
86+
// Polindromo: es una palabra, numero o frace que se lee igual de izquierda a derea que de derecha a izquierda
87+
function isPalindromo(stringA) {
88+
let palindromo = Array.from(stringA);
89+
let revercedPolindromo = [];
90+
for (let i = stringA.length - 1; i >= 0; i--) {
91+
revercedPolindromo.push(stringA[i]);
92+
}
93+
let isPalindromo = true;
94+
for (let j = 0; j < palindromo.length; j++) {
95+
if (palindromo[j].toLowerCase() !== revercedPolindromo[j].toLowerCase()) {
96+
isPalindromo = false;
97+
break;
98+
}
99+
}
100+
if (isPalindromo) {
101+
return `${stringA} es palindromo`;
102+
} else {
103+
return `${stringA} no es palindromo`;
104+
}
105+
}
106+
// Anagrama: es una palabra o frace que se forma reordenando las letras de otra palabra o frace original, utilizando exactamente las mismas letras con la misma frecuencia.
107+
function cleanSort(string) {
108+
return string
109+
.toLowerCase()
110+
.replace(/[^a-z0-9]/g, "")
111+
.split("")
112+
.sort()
113+
.join("");
114+
}
115+
function isAnagrama(stringA, stringB) {
116+
let string1 = cleanSort(stringA);
117+
let string2 = cleanSort(stringB);
118+
119+
if (string1 === string2) {
120+
return `${stringA} y ${stringB} son Anagramas`;
121+
} else {
122+
return `${stringA} y ${stringB} no son Anagramas`;
123+
}
124+
}
125+
// Isograma: es una palabra o frace en la que ninguna letra se repita
126+
function isIsograma(string) {
127+
let newString = string.toLowerCase().replace(/[^a-z]/g, "");
128+
let letters = new Set();
129+
130+
for (const letter of newString) {
131+
if (letters.has(letter)) {
132+
return `${string} no es un Isograma`;
133+
}
134+
letters.add(letter);
135+
}
136+
return `${string} es un Isograma`;
137+
}
138+
139+
console.log(isPalindromo("radar"));
140+
console.log(isAnagrama("amors", "roma"));
141+
console.log(isIsograma("isogramas"));

0 commit comments

Comments
 (0)