0
Ich versuche, eine Ausgabe abzurufen, die die Generierung einer Fehlermeldung vermeiden würde. "AttributError: Das Objekt 'NoneType' hat kein Attribut 'group'". Ich glaube, dass der Fehler auf die Ausgabe von "matchObj", das "None" ist, zurückzuführen ist. Unten ist mein Code.Gültige Eingabe, um Fehler zu vermeiden (mit re: match)
def processCcDtMdyStamp(datestamp):
matchObj = re.match(r'^(\d+)/(\d+)/(\d+)\s', datestamp)
(month, day, year) = (matchObj.group(1), matchObj.group(2), matchObj.group(3))
return "%s/%s/%s" % (month, day, year)
if __name__ == '__main__':
print(processCcDtMdyStamp(' 1/6/2015 '))
Was wäre eine gültige Eingabe (Datumsstempel) anstatt "1/6/2015"? Vielen Dank im Voraus.
die Whitespaces um die 'Trim 06.01/2015' und sehen, ob es funktioniert. Aber warum sollte man reguläre Ausdrücke verwenden, statt zu versuchen, den String über 'datetime.strptime()' in datetime zu laden? – alecxe
Oder entfernen Sie '^' aus dem RE. – DyZ
Oder fügen Sie ein '\ s *' nach dem '^' (und wenn Sie auch ein '* $' am Ende hinzufügen möchten, so trimmen Sie innerhalb der Regex). – xzoert