Buscar

Python: buscar subcadena hacia atrás


 
 Old 13 feb 2009, 17:11   #1 (permalink)  
Miembro activo
 
Avatar de Shirkkan
 
Registrado: febrero 2005
Ubicación: búscame y me encontrarás
Mensajes: 1.943

Predeterminado Python: buscar subcadena hacia atrás

Hola!!

En un programa en python, tengo una cadena muy larga, y desde la última posición tengo que buscar hacia atrás cierta subcadena. ¿Como lo puedo hacer?
En el programa uso la función find para buscar, pero solo lo hago hacia adelante. He probado añadiendo como último parámetro "reverse", "reversed", "reverse=true", "reversed=true" pero ninguno es admitido.

¿Alguna idea?

Gracias!!!

___.-·*·-.___ S H I R K K A N ___.-·*·-.___


___.-·*·-.___ B Ý ___.-·*·-.___
Shirkkan is offline   Citar y responder
 
 Old 13 feb 2009, 17:19   #2 (permalink)  
Ex-miembro
 
Avatar de nibrox99
 
Registrado: junio 2007
Mensajes: 631

Predeterminado Re: Python: buscar subcadena hacia atrás

Cita:
Shirkkan escribió: Ver post
Hola!!

En un programa en python, tengo una cadena muy larga, y desde la última posición tengo que buscar hacia atrás cierta subcadena. ¿Como lo puedo hacer?
En el programa uso la función find para buscar, pero solo lo hago hacia adelante. He probado añadiendo como último parámetro "reverse", "reversed", "reverse=true", "reversed=true" pero ninguno es admitido.

¿Alguna idea?

Gracias!!!
a ver que me entere....

tienes una cadena .ejemplo

holaquetalestashoy?megustamuchotuvestidonuevoverdo soparalafiesta

cierta subcadena hacia atras seria,por ejemplo:gusta?

o seria astsug (gusta al reves...)
nibrox99 is offline   Citar y responder
 
 Old 13 feb 2009, 17:44   #3 (permalink)  
Moderador
 
Avatar de the_ma3x
 
Registrado: febrero 2005
Ubicación: México
Mensajes: 4.325

Predeterminado Re: Python: buscar subcadena hacia atrás

shirkkan, mis conocimientos en phyton son por decirlo de alguna manera nulos.

Pero puedes hacer una funcion recursiva que vaya recorriendo la cadena de derecha a izquierda. Es decir, supongo que phyton posee funciones de manejo de cadenas como las famosas mid, left, rigth de vb, php y otros...

Así que una función que lea el tamaño real de la cadena, y de ahi vas con un for en forma ascendente analizando caracter por caracter o palabra por palabra, hasta llegar al principio.

Es algo complicado, pero sacando la lógica se vuelve más sencillo.

Saludines

Every wall is a door. Ralph Waldo Emerson
the_ma3x is offline   Citar y responder
 
 Old 13 feb 2009, 21:42   #4 (permalink)  
Miembro activo
 
Avatar de Shirkkan
 
Registrado: febrero 2005
Ubicación: búscame y me encontrarás
Mensajes: 1.943

Predeterminado Re: Python: buscar subcadena hacia atrás

A ver, os cuento exactamente el problema.
Estoy leyendo el código fuente de una web, y tengo que buscar el último partido jugado, y de ahí para atrás, leer los 5 últimos.
Es decir, tengo que ir al final, y de ahí buscar los 5 últimos. Sé que hay que buscar, pero lo que no se es cómo buscarlo.

Lo ideal sería una función del estilo: find("partido",hacia_atras), pero esta función no existe en python, o yo no la he descubierto.
El código sería mas o menos así:
Código:
MIENTRAS partido != 0:
    find(siguiente_partido)

#Al llegar aquí estamos en el último partido jugado.
num=0
MIENTRAS num <5:
    find(partido,hacia_atras)
    num=num+1



Espero haberme explicado


Nota: podría hacerlo con un bucle que vaya leyendo secuencias de caracteres hasta que encuentren un patrón, pero prefiero usar alguna función (si es que existe) que seguramente será más eficiente.

___.-·*·-.___ S H I R K K A N ___.-·*·-.___


___.-·*·-.___ B Ý ___.-·*·-.___
Shirkkan is offline   Citar y responder
 
 Old 14 feb 2009, 19:00   #5 (permalink)  
Miembro activo
 
Avatar de selken
 
Registrado: mayo 2007
Ubicación: El Salvador
Mensajes: 1.216

Predeterminado Re: Python: buscar subcadena hacia atrás

hola

yo no se nada de phyton, pero tal vez sirva de ayuda comentarte que en otros lenguajes esto funciona así:

Código PHP:
$telefono_sin_cod substring('0050377894548', -8);
//$telefono_sin_cod = '77894548'; 
Es simplemente una variante de substring, y está disponible que yo sepa en php, java, c#, javascript y SQL, no creo que phyton no la tenga, investigate sobre la función substring en phyton.

salup xD

Al llegar a la meta el camino sigue...
Strength, Power, Will, Passion!!!
selken is offline   Citar y responder
 
 Old 15 feb 2009, 13:05   #6 (permalink)  
Miembro activo
 
Avatar de Shirkkan
 
Registrado: febrero 2005
Ubicación: búscame y me encontrarás
Mensajes: 1.943

Predeterminado Re: Python: buscar subcadena hacia atrás

Cita:
selken escribió: Ver post
hola

yo no se nada de phyton, pero tal vez sirva de ayuda comentarte que en otros lenguajes esto funciona así:

Código PHP:
$telefono_sin_cod substring('0050377894548', -8);
//$telefono_sin_cod = '77894548'; 
Es simplemente una variante de substring, y está disponible que yo sepa en php, java, c#, javascript y SQL, no creo que phyton no la tenga, investigate sobre la función substring en phyton.

salup xD

No es exactamente extraer una subcadena lo que busco. De todas formas, no pasa nada. Lo haré con un bucle que vaya recorriendo hacia atrás hasta que encuentre una cierta subcadena y arreglado.

Gracias por las respuestas

___.-·*·-.___ S H I R K K A N ___.-·*·-.___


___.-·*·-.___ B Ý ___.-·*·-.___
Shirkkan is offline   Citar y responder

« Sobre webservices | Shell script: leer fichero y extraer lineas »

Herramientas
Estilo


 

Tema Iniciado por Foro Respuestas Último mensaje
¡El ultimo post gana! infested_ruben Un poco de todo 4508 21 sep 2006 08:38
¿Qué os parece? Acepto sugerencias amm101287 Un poco de todo 31 06 feb 2006 21:34



Buscar