elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [?] Python - String Matching
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [?] Python - String Matching  (Leído 7,150 veces)
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
[?] Python - String Matching
« en: 8 Noviembre 2009, 21:25 pm »

Qué métodos conocen en python para búsquedas de strings, se que existe "find e index" pero estos solo encuentran la primera ocurrencia. Quisiera saber si es que existen otros métodos.


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [?] Python - String Matching
« Respuesta #1 en: 9 Noviembre 2009, 02:43 am »

Básicamente son esas, pero eso ocurre en casi todos los lenguajes, la función find te devuelve la primera coincidencia (también esta rfind), para obtener un array (lista) con las coincidencias debes de hacerlo de manera recursiva o con un loop .. buscas .. encuentras .. y vuelves a buscar tomando como inicio la coincidencia anterior, esto hasta que ya no encuentres nada  :P

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: [?] Python - String Matching
« Respuesta #2 en: 9 Noviembre 2009, 12:30 pm »

Gracias, no conocía esa función, y creo que me sirve para encontrar luego de ello la máxima coincidencia y la mínima.

Un saludo!
En línea

h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: [?] Python - String Matching
« Respuesta #3 en: 9 Noviembre 2009, 15:16 pm »

Hola Novlucker, una librería muy útil : "re module" "Regular Expression Operations".

Un saludo!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [?] Python - String Matching
« Respuesta #4 en: 9 Noviembre 2009, 15:21 pm »

Claro que si ... pero es que para algo tan sencillo como buscar una misma palabra en una cadena me es "demasiado" hacer uso del modulo re, diferente sería si necesitas buscar palabras cuya "estructura" sea "X", donde el valor de "X" no es constante, lo que tu búscas se soluciona con una función simple

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: [?] Python - String Matching
« Respuesta #5 en: 9 Noviembre 2009, 15:31 pm »

Mmm, te explico lo que necesito hacer, te doy un ejemplo:

Cadena1 = "HOLA PEREZ JUAN"
Cadena2 = "ADIOS HOL ADIOS ADIOS"

La función  debería devolver, (6,4). Es decir que necesecito encontrar la máxima coincidencia posible entre dos cadenas, pero siendo que en la cadena1 lo debo tener en cuenta desde el inicio, es decir desde la posición "0".

Tu como lo implementarías?

Lo que intento hacer es evadir la búsqueda por complejidad de n², que sería una búsqueda lineal, quiero tratar de hacerlo lo más eficiente posible.
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [?] Python - String Matching
« Respuesta #6 en: 9 Noviembre 2009, 15:56 pm »

Pero es que así como lo tienes solo se me ocurre de manera líneal, además de que debes de comparar caracteres y no fragmentos de texto, dado que tu en la Cadena1 tienes un texto dado, pero comparas ese texto dado teniendo en cuenta espacios en medio .. lo que se me ocurre es con un loop ignorando espacios (pero seguro que esto también se te ha ocurrido), salvo que estes buscando un espacio

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: [?] Python - String Matching
« Respuesta #7 en: 9 Noviembre 2009, 16:16 pm »

Exacto, eso último es lo que se me había ocurrido. Entonces al parecer no hay otra manera, aunque alguna vez me recomendaron suffix trix, pero todavía no llego a interpretar cual era su fin dentro de esto. También me recomendaron utilizar diccionarios, en esto último me encuentro.

Gracias  ::)
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [?] Python - String Matching
« Respuesta #8 en: 9 Noviembre 2009, 17:21 pm »

Justamente tiene que ver con la búsqueda de cadenas ...

Mirate aquí
:http://marknelson.us/1996/08/01/suffix-trees/

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: [?] Python - String Matching
« Respuesta #9 en: 10 Noviembre 2009, 04:13 am »

Gracias por la info Novlucker!  ::)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Alacenar numero de string en variable [python]
Scripting
Ricardo95 2 3,315 Último mensaje 9 Abril 2011, 23:11 pm
por Novlucker
RegExp Numero de string [Python]
Scripting
Ricardo95 1 3,413 Último mensaje 15 Abril 2011, 00:46 am
por Novlucker
[PYTHON]Localizar string
Scripting
.:UND3R:. 3 2,059 Último mensaje 5 Abril 2015, 05:24 am
por .:UND3R:.
Quitar comillas de un string - python
Scripting
painpills 1 2,442 Último mensaje 23 Junio 2021, 19:23 pm
por Danielㅤ
Dado string, retornar true si hay uno o más pares de paréntesis [PYTHON]
Scripting
Panic0 5 2,721 Último mensaje 1 Febrero 2022, 01:23 am
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines