it-swarm.com.de

Zeichenfolge in Leerzeichen in Python teilen

Ich suche das Python Äquivalent zu

String str = "many   fancy Word \nhello    \thi";
String whiteSpaceRegex = "\\s";
String[] words = str.split(whiteSpaceRegex);

["many", "fancy", "Word", "hello", "hi"]
396
siamii

Die Methode str.split() ohne Argument teilt sich in Leerzeichen:

>>> "many   fancy Word \nhello    \thi".split()
['many', 'fancy', 'Word', 'hello', 'hi']
725
Sven Marnach
import re
s = "many   fancy Word \nhello    \thi"
re.split('\s+', s)
62
Óscar López

Eine andere Methode durch das re Modul. Es führt die umgekehrte Operation aus, indem alle Wörter abgeglichen werden, anstatt den gesamten Satz durch Leerzeichen zu teilen.

>>> import re
>>> s = "many   fancy Word \nhello    \thi"
>>> re.findall(r'\S+', s)
['many', 'fancy', 'Word', 'hello', 'hi']

Der obige reguläre Ausdruck würde mit einem oder mehreren Nicht-Leerzeichen übereinstimmen.

14
Avinash Raj

Die Verwendung von split() ist die pythonische Methode zum Teilen eines Strings.

Beachten Sie auch, dass diese Zeichenfolge in einer Liste zurückgegeben wird, wenn Sie split() für eine Zeichenfolge ohne Leerzeichen verwenden.

Beispiel:

>>> "ark".split()
['ark']
12
Robert Grossman