Python-Regex, um den Beginn der Zeichenfolge oder des Leerzeichens abzugleichen
Ich habe die folgende Zeichenfolge
'abc[123]defgh ijk[456]lm no[78] pq'
Und ich möchte alle Teile extrahieren, die sich entweder zwischen dem Anfang der Zeichenfolge und befinden[
oder zwischen Leerzeichen und[
. Für die angegebene Zeichenfolge sind dies die Teile'abc'
, 'ijk'
, und'no'
.
Ich habe den folgenden Ausdruck
exp = re.compile(r'\s(.*?)\[')
Aber ich kann nicht herausfinden, wie man den Anfang der Zeichenkette als optionalen Ausdruck hinzufügt. Wie muss ich den Ausdruck schreiben, um beide Fälle abzudecken?