Ответ 1
Метод str.split()
без аргумента разбивается на пробелы:
>>> "many fancy word \nhello \thi".split()
['many', 'fancy', 'word', 'hello', 'hi']
Я ищу эквивалент Python
String str = "many fancy word \nhello \thi";
String whiteSpaceRegex = "\\s";
String[] words = str.split(whiteSpaceRegex);
["many", "fancy", "word", "hello", "hi"]
Метод str.split()
без аргумента разбивается на пробелы:
>>> "many fancy word \nhello \thi".split()
['many', 'fancy', 'word', 'hello', 'hi']
import re
s = "many fancy word \nhello \thi"
re.split('\s+', s)
Другой метод через модуль re
. Он выполняет обратную операцию по совпадению всех слов вместо того, чтобы плевать все предложение пробелом.
>>> import re
>>> s = "many fancy word \nhello \thi"
>>> re.findall(r'\S+', s)
['many', 'fancy', 'word', 'hello', 'hi']
Выше регулярное выражение будет соответствовать одному или нескольким непространственным символам.
Использование split()
будет самым питоническим способом разделения на строку.
Также полезно помнить, что если вы используете split()
для строки, которая не имеет пробела, тогда эта строка будет возвращена вам в списке.
Пример:
>>> "ark".split()
['ark']