Archiv verlassen und diese Seite im Standarddesign anzeigen : RegEx gesucht
scrawler
27.09.2007, 14:07
Hallo,
Meine Anfrage sieht simpel aus, doch (zu) komplex für mich.
Ich möchte eine simple Zeichenkette extrahieren.
Quell-String: "week: 39 from: 24.9.2007 to 30.9.2007"
Ziel: ich möchte den letzten Teil extrahieren, von "to " bis zum Ende des Strings.
grüsse,
alex
Und welcher Regex Dialekt?
Und welche Sprache?
quick'n'dirty:
perl -ne 'print $1 if m/(to.*)$/' <<< "week: 39 from: 24.9.2007 to 30.9.2007"
scrawler
27.09.2007, 15:23
Vielen Dank für Deine sehr schnelle Antwort!!!
Ich verwende den regulären Ausdruck unter Java.
Einen Dialekt(BRE,ERE) habe ich nicht explizit angegeben, daher gehe ich von dem default Wert (BRE?) aus.
Deine Lösung hat bei mir leider (noch) nicht zum gewünschten Ergebnis geführt. Liegt das am Dialekt oder der Perl-spezifischen Syntax?
scrawler
27.09.2007, 17:44
Der Lösung dicht auf der Spur...
Der Ausdruck [^to]*$ bzw. [^to]*\z liefert mit das gewünschte Ergebnis. Allerdings wird als 2ter Wert noch ein leeres Objekt geliefert, welches als Index die länge des Strings enthält.
Gibt es bei der Terminierung der oberen Ausdrücke was zu beachten?
"week: 39 from: 24.9.2007 to 30.9.2007"
fuers ganze datum
/to ([\d\.]+)$/
fuer jede einzelne zahl:
/to (\d{1,2})\.(\d{1,2})\.(\d{4}|\d{2})$/
das (mit oder ohne /) sollte funkionieren.
dein [^to] tut nicht was du denkst. http://en.wikipedia.org/wiki/Regular_expression#Traditional_Unix_regular_expressions
scrawler
28.09.2007, 08:54
TOP!!!
Danke für Deine Lösung, das hilft mir sehr weiter!
(ohne / funktioniert es unter Java.)
gruss,
alex
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.