Portál AbcLinuxu, 12. května 2025 07:51

Dotaz: regex a konce radku

7.3.2008 18:21 martin
regex a konce radku
Přečteno: 778×
Odpovědět | Admin
Zdravim, Nevite nekdo jak na regex konce radku ve windoze a macos?
V linuxu mi vsechno funguje jak ma. Tam staci \x0A.
Ale potrebuji vyhledavani rozchodit i na win a macos.
Ve win mi ale RE modul sadu \x0D\x0A nenajde ani za zlaty prase.
classes = re.compile(r"(Process|Function) ([a-z_A-Z]+).*\x0D\x0A", re.I)
data = classes.findall(text)

diky moc
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

David Watzke avatar 7.3.2008 18:27 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: regex a konce radku
Odpovědět | | Sbalit | Link | Blokovat | Admin
$ by mělo jít všude
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
8.3.2008 19:44 martin
Rozbalit Rozbalit vše Re: regex a konce radku
Ano, konec retezce by to vyresil.
Pokud ale takto parsuji cely text ulozeny v textbufferu tak to ztraci smysl.
Jedine toto implementovat tak ze budu parsovat kazdy radek v bufferu zvlast,
coz by zase zabralo nejaky cas navic a pouzit psyco kvuli dalsi zavislosti se mi nechce.
Ale dik za dalsi tip jak to vyresit.
David Watzke avatar 8.3.2008 19:47 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: regex a konce radku
Aha a co \n, to by nešlo použít?
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
8.3.2008 19:59 martin
Rozbalit Rozbalit vše Re: regex a konce radku
V linuxu to tak funguje.
Ve win take ale po dvou odradkovanich :(.
A kombinaci \r\n nepobere. On proste to \r nenajde.
8.3.2008 20:05 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: regex a konce radku
V Ruby funguje $ v multiline regexpech jako anchor na konec řádku, a ^ zase na začátek řádku, takže /^a$.*^b$/m matchuje vše mezi řádkem obsahujícím pouze "a" a řádkem obsahujícím pouze "b". Neříkej, že Python neumí multiline. ;-) Zkus volbu re.M nebo jak se to jmenuje.
8.3.2008 20:13 martin
Rozbalit Rozbalit vše Re: regex a konce radku
Oops, to me fakt v tu chvili nenapadlo.
S multiline to jede.Ach jo clovek fakt zapomina :)
Diky moc
7.3.2008 23:15 Franta Hanzlík
Rozbalit Rozbalit vše Re: regex a konce radku
Odpovědět | | Sbalit | Link | Blokovat | Admin
Asi to nebude přesně to co chcete vědět. Jen tak pro zajímavost, řešil jsem podobný problém před cca 10 roky. Výsledek byl ten, že s čistým Unixem budu mít nulové problémy a čistou hlavu. Vím, že je módní řešit chyby/problémy slabších OS, ale lepší je používat hlavu na cestu dopředu, ne zpět...
7.3.2008 23:37 Ash | skóre: 53
Rozbalit Rozbalit vše Re: regex a konce radku
OT: Přestože jsem se vydal stejnou cestou a zatím mám to štěstí že se mi jí daří držet, tak myslím že takovýto příspěvek patří spíš do blogu... To že třeba MacOS používá CR a ne LF jako linux rozhodně není jeho chyba ani problém, takže ten příspěvek opravdu ani okrajově nesouvisí s dotazem.
8.3.2008 20:08 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: regex a konce radku
Mac OS přešel na LF již před mnoha lety, současně s přechodem na unixové jádro. Windows jsou tedy v současnosti snad jediný používaný systém, co používá CR+LF.
8.3.2008 19:56 martin
Rozbalit Rozbalit vše Re: regex a konce radku
A vyresil ?
Kdyby bylo jen na me tak pisu aplikace jeste v AmigaE pod MUI ;)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.