Ich muss eine Zeichenfolge "Liste" als Eingabe nehmen und es entsprechend formatieren. Hier ist ein Beispiel Eingabe:Eine Zeichenfolge in eine ganze Zahl aufteilen
string = "This is the input:1. A list element;2. Another element;3. And another one."
Und ich die Ausgabe möchte eine Liste in folgendem Format sein:
list " ["This is the input:", "A list element;", "Another element;", "And another one."]
Ich habe versucht, Sie folgendermaßen vorgehen:
list = string.split('(\d+). ')
In der Hoffnung, dass es auf alle Ganzzahlen geteilt werden würde, gefolgt von einem vollen sto p und ein Leerzeichen, aber das scheint nicht zu funktionieren: Es wird nur eine einzelne Elementliste zurückgegeben, die anzeigt, dass keines der Splitkriterien gefunden wurde.
Wer sieht was ich falsch mache?
alecxe hat geantwortet, wie man es macht; Was Sie falsch machen, ist a) 'string.split()' braucht keine regulären Ausdrücke, nur literalen Text, und b) '.' in regex ist ein Sonderzeichen, das zu allem passt, also eine Ziffer gefolgt von * einem Literal dot * benötigt das '.' mit einem Backslash. – TessellatingHeckler
Danke für die Eingabe - ich trete selbst dafür, dass ich dem '.' nicht entfliehen kann, aber es ist irgendwie beruhigend zu wissen, dass es mit' \ d' sowieso nicht funktioniert hätte. –