[pyar] Busqueda de palabra en un texto

Gabriel Acosta acostadariogabriel en gmail.com
Sab Feb 28 12:11:42 ART 2015


Buen día lista!
Tengo este código:

def ffind(text, word):
i = 0
    while True:
        i = text.find(word, i)
        if i == -1:
            return
        end = i + len(word)
        yield i, end
        i += len(word)

Tengo este generador que pasándole un texto y una palabra me devuelve
el índice (inicio) e índice(final) de esa palabra en el texto, pero
tambien necesito el número de línea en la que se encuentra, luego
intenté esto:

def ffind(text, word):
index = 0
    line = 0
    for l in text.splitlines():
        index = l.find(word)
        if index != -1:
            end = index + len(word)
            yield index, end, line
        line += 1

Me soluciona el problema del número de línea pero solo me busca una
ocurrencia por línea,  alguna solución a esto?.

Un abrazo!
-- 
Gabo


More information about the pyar mailing list