Comunidad Gambas-es
Reto 1 (quita los corchetes rectos) Nivel Medio - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: General (https://gambas-es.org/forum-4.html)
+--- Tema: Reto 1 (quita los corchetes rectos) Nivel Medio (/thread-119.html)



Reto 1 (quita los corchetes rectos) Nivel Medio - kokodrilo - 29-09-2020

buenas,

"hola esto es un texto de prueba, el reto[a] consiste en quitar los paréntesis rectos y lo que[d[ contienen y dejar el texto]e] limpio] de corchetes rectos, pero puede[ haber corchetes que no[ son pares es decir un de apertura]1] y otro de cierre, no se ta difícil, demuestra que sos ingenioso[z] limpiando este texto de[1] corchetes rectos"

15 días a partir de la fecha del posteo, solución a uno.cero@live.com

Soluciones al reto:

1-omoreno


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - guizans - 01-10-2020

¿Y cual es el premio? Big Grin Big Grin Big Grin Big Grin


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - kokodrilo - 02-10-2020

Hola guizans Smile
El premio es la satisfacción de resolver un problema de programación, con todo lo que eso conlleva, pues quien intente resolverlo aprenderá muchas cosas etc, es enriquecedor. me lamento haber publicado soluciones en solveet que no publique en mi blog Sad (se perdieron)


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - omoreno - 02-10-2020

Saludos.
¿ Esta es la forma como debería quedar ?

[Imagen: 9YHE33o.png]


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - kokodrilo - 04-10-2020

hola, si ese seria el resultado esperado, espero tu código (por correo no por acá) para comprobar eso, saludos.


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - kokodrilo - 04-10-2020

omoreno, funciona bien, pero... intente hacerlo fallar al código con muchas chanchadas, al parecer solo lo hago fracasar con: ingen[ioso[z]  con eso el programa destroza la palabra ingenioso.

con un corchete de apertura unas letras antes de un par de corchetes de apertura/cierre.

estaría bueno que cada uno sin programar planteara la estrategia para resolver este reto:

por ejemplo a mi se me ocurre un proceso similar:

1: buscar los pares de corchetes apertura/cierre que contengan una sola letra y sin que exista un corchete de apertura o cierre y remplazar por nada.
2: remplazar corchetes de apertura o cierre con nada.

Saludos y hagan sus planteos o estrategias para resolver este problema de programación.


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - omoreno - 05-10-2020

Hola Kokodrilo.

Ciertamente fallara con  ingen[ioso[z] , por que me parece que en el primer enunciado indicas que había que eliminar los pares de corchetes y su contenido.

Como habrás visto solo elimino el contenido que no tiene espacio de cualquier tamaño, pero como comentas entonces se le puede agregar que elimine solo los pares con contenido de un máximo de un carácter.

Agrega al condicional IF de linea 56 esto:  And Eliminar.Len = 3

Saludos.


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - calcena - 06-10-2020

Buenas bajo mi punto de vista, el ejercicio está abierto a falta de especificaciones, es decir las casuísticas no están definidas claramente, por ejemplo  ingen[ioso[z], si debe existir un patrón a seguir se parametriza y si debe ser al libre albedrío, entonces se debe planificar cuanto máximo de posiblidades existan.

Mi pseudocódigo respesto al enunciado sería
- Detectar los corchetes y sustituir el contenido siguiente que NO sea espacio en blanco por un carácter comodín, p.j. *
- Una vez sustituido todo esto y almacenado en una variable j reemplazar corchetes puros [ y ] y el carácter comodín por nada "".

Saludos.


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - jguardon - 06-10-2020

Para este ejercicio sin duda el mejor aliado es Regexp. Con expresiones regulares sería relativamente fácil encontrar parejas de corchetes y su contenido o corchetes sueltos.

Pero coincido con calcena, no tengo muy claro el propósito o la casuistica concreta para dar una solución válida. ¿Se trataría de eliminar parejas de etiquetas respetando el texto contenido entre apertura y cierre o es otro tipo de contexto?

Saludos


RE: Reto 1 (quita los corchetes rectos) Nivel Medio - kokodrilo - 06-10-2020

si tienen razón, y según lo que pedí omoreno resolvió el reto hasta el momento nadie mas presento otra alternativa. El reto en si es limpiar el texto indicado, pero ta yo me fui un poco mas alla.

tampoco aclare que la solución debe ser exclusivamente con gambas3. lo aclaro ahora jajaj  perdón.