私は同等の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']
上記の正規表現は、1つ以上のスペース以外の文字と一致します。
split()
を使うことは、文字列を分割する最もPythonicの方法になるでしょう。
空白を含まない文字列でsplit()
を使用すると、その文字列がリストとして返されることを覚えておくと便利です。
例:
>>> "ark".split()
['ark']