Hace un tiempo estuve hablando de las expresiones regulares. Con Python me defiendo un poco dentro de lo posible,
pero me gustaría tambien poder hacer lo mismo en gambas. Y es que encuentro diferencias que no llego a comprender.
Os muestro un ejemplo en Python y busco una respuesta de como hacerlo en gambas. Sera sencillo.
Se como hacerlo en gambas, pero busco otra forma más sencilla. Y no sé si es un característica propia
de cada lenguaje, del componente. Ni idea.
Os muestro el código y os digo la salida que:
En Python se importa el modulo re, para poder usar expresiones regulares:
import re
palabras = []
frase = "La aventura espacial"
palabras = re.findall('.+?\s',frase)
print palabras
palabras = []
frase = "La aventura espacial"
palabras = re.findall('.+?\s',frase)
print palabras
Bien, en este caso, palabras es una lista(array) y en Python te muestra la lista completa:
Obtendríamos:
Citar:
Hay un espacio despues de la palabra debido a la expresión regular.
Si queremos evitar ese espacio, debemos usar los paréntesis.
...
palabras = re.findall('(.+?)\s',frase)
....
palabras = re.findall('(.+?)\s',frase)
....
Y así obtendríamos:
Citar:
Si quiero hacerlo en gambas, yo intentaría hacerlo con la misma expresión.
En gambas tengo que añadir un símbolo de barra mas.
Esto me da:
Citar:
Bien, pero yo quiero La aventura. El procedimiento que se hacer en gambas es repetir la expresión. ( Que es lo que no quiero hacer).
Y hacer uso de los paréntesis.
Quiero dejar una nota para que sepáis que ahora hay algo que ha quedado anticuado:
Citar:
Hago el código y añado dos veces la expresión.
Y duplicando la expresión y haciendo uso de los paréntesis dos veces, capturo la parte que me interesa. Cada palabra coincidente con su índice.
En gambas no estoy seguro si se puede hacer de la primera forma. Es que es repetirse mucho. Y la expresión resultante puede ser enorme y más confusa de lo que son ya.
No vale que uséis Split. Jejeje. La cosa es usar expresiones regulares.
Saludos