[LÖST]Python: regexp sökning

Här diskuteras programmering och utveckling
hub
Inlägg: 74
Blev medlem: 15 feb 2007, 17:34

[LÖST]Python: regexp sökning

Inlägg av hub »

Hej!

Jag har en lista av strängar som jag ska söka i med modulen re.
Det är två ord som ska matchas i strängen, och enligt http://www.regular-expressions.info/jav ... ample.html så fungerar det, men inte i pyhton.

Kod: Markera allt

import re

if __name__ == '__main__':
    listofstrings = list(['architecture\n', 'architecture of\n', 'architecture of s27_bench is\n'])
    p = re.compile('(?=.*?\barchitecture\b)(?=.*?\bs27_bench\b).*', re.IGNORECASE)
    for str in listofstrings:
        result = p.search(str)
        if not result is None:
            print 'Found string'
            print result.group()
        else:
            print 'Not found'
Det är meningen att den ska hitta i tredje elementet i listan, men den hittar inget! :(

Hjälp vore tacksamt!
Senast redigerad av 1 hub, redigerad totalt 23 gånger.
hub
Inlägg: 74
Blev medlem: 15 feb 2007, 17:34

LÖST: Python: regexp sökning

Inlägg av hub »

Hittade problemet.
Python tyckte inte om \b utan att ange att strägnen är "raw".

Kod: Markera allt

    p = re.compile(r'\barchitecture\b.*\bs27_bench\b.*', re.IGNORECASE)
Bara lagt till ett r i början av strängen så löste det sig!
Skriv svar

Återgå till "Programmering och webbdesign"