![]() |
[Python] Problem mit regulären Ausdrücken
Hi,
ich habe ein kleines Problem mit einem regulären Ausdruck in Python... Mit <link>((s?.*?).*?)</link>(?uism) bekommt man den Text der zwischen den <link>-Tags ist. Ich möchte aber nun nur die Tags, die von den <item>-Tags eingeschlossen sind... Also folgendes: <item>Hier steht irgend ein Text<link>Diesen Text brauche ich</link>Hier steht irgend ein Text</item> MfG Cruso |
Re: [Python] Problem mit regulären Ausdrücken
Vielleicht so (ungetestet)? Vorraussetzung ist da allerdings, dass im item-Tag möglichst kein anderer link- oder item-tag vorkommt. Das wird sonst wohl zu unvorhergesehenen Ergebnissen führen.
Code:
Ansonsten vielleicht mal einen XML-Parser anwerfen?
<link>.*<item>(.*)</item>.*</link>
Mit freundlichen Grüßen, Valle |
Re: [Python] Problem mit regulären Ausdrücken
Zitat:
|
Re: [Python] Problem mit regulären Ausdrücken
Mh, ja ich muss zugeben, dass ich mit Python bisher wenig mit Regular Expressions gearbeitet habe. Aber dafür mit anderen Sprachen und eigentlich sollte der Code gehen.
Das hier geht bei mir:
Code:
Mit freundlichen Grüßen,
#!/usr/bin/python
import re s = "<item>Hier steht irgend ein Text<link>Diesen Text brauche ich</link>Hier steht irgend ein Text</item>" r = "<item>.*<link>(.*)</link>.*</item>" print re.compile(r, re.I+re.S).findall(s) Valle |
Re: [Python] Problem mit regulären Ausdrücken
Nun gut, es kann sein, dass es bei diesem einen Beispiel funktioniert... Nur beim Code auf
![]() |
Re: [Python] Problem mit regulären Ausdrücken
XML/RSS-Parser!
Mit freundlichen Grüßen, Valle |
Re: [Python] Problem mit regulären Ausdrücken
Es kann doch nicht die Lösung sein, immer wenn man ein (kleines) Problem hat einfach alles hinzuschmeißen und eine Fertiglösung zu nehmen... Zumal es hier ja nur an einer Codezeile liegt. Nur weil wir beide die Lösung nicht kennen, heißt das ja nicht, dass es keine Lösung gibt.
|
Re: [Python] Problem mit regulären Ausdrücken
Wieso genau anders herum :gruebel:
Zitat:
Code:
also so...
<item>.*<link>(.*)</link>.*</item>
Code:
<item>.*?<link>((s?.*?).*?)</link>.*?</item>(?uism)
|
Re: [Python] Problem mit regulären Ausdrücken
Zitat:
Jedenfalls geht es so!!! Danke!!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz