1. ホーム
  2. python

[解決済み] 文字列を複数の単語境界のデリミタで単語に分割する

2022-03-24 21:31:52

質問

やりたいことはかなり一般的な作業だと思うのですが、Webで調べても参考になるものがありません。句読点を含むテキストがあり、その単語のリストが欲しいのです。

"Hey, you - what are you doing here!?"

であるべきです。

['hey', 'you', 'what', 'are', 'you', 'doing', 'here']

しかし、Pythonの str.split() は1つの引数でしか動作しないので、私は空白で分割した後に句読点を持つすべての単語を持っています。何かアイデアはありますか?

解決方法を教えてください。

正規表現が正当化されるケース

import re
DATA = "Hey, you - what are you doing here!?"
print re.findall(r"[\w']+", DATA)
# Prints ['Hey', 'you', 'what', 'are', 'you', 'doing', 'here']