Lassen Sie uns sagen, dass ich eine Zeichenfolge, die wie folgt aussieht:Wie beide Gruppen extrahieren innerhalb einer wiederholten Regex in Python
my_date = February 4 - March 23, 2015
Ich möchte einen regulären Ausdruck erstellen, die sowohl Monatsnamen extrahieren und die Jahr, so dass ich es wie folgt auf:
date_regex = r"^(?:(Jan(?:uary)?|Feb(?:ruary)|Marc?h?|Apr[il1]?[I1l]?|May|June?|July?|Aug(?:ust)?|Sep(?:tember)?|Oct(?:tober)?|Nov(?:ember)?|Dec(?:ember)?)\s+\d?\d(?:\s+-\s+)?){2},\s+(20[01]\d)"
ich dachte, ich durch Einschließen der ganze Regex klug wurde den Monat und Tag in einer nicht passenden Gruppe und {2}
sollte zwei sein, dort zu sagen, mit übereinstimmen sie, aber leider der gro ups, die ich davon bekomme, sind ("March", "2015")
. Es scheint, als ob es nicht das erste Match von "Februar" fängt.
Wohin gehe ich falsch? Ist es meine Regex, oder ist das einfach nicht möglich?
This question scheint verwandt zu sein und scheint zu implizieren, dass was ich versuche zu tun ist nicht ohne das Modul regex
möglich.
Dank
Setzen Sie einen Capture Gruppiere ** um ** die Gruppe mit '{2}' danach. – Barmar
Das gibt mir '(" 4. Februar - 23. März "," März "," 2015 ")'. Wie auch immer, um es genauer zu machen? – brittenb
Wird das Jahr immer am Ende sein? – Druzion