LoginSignup
2
3

More than 1 year has passed since last update.

【Python】前処理で区切り文字ごと抽出する方法

Posted at

この記事でわかること

以下の文章を

すごい!さすがですね。他には何か特技はありますか?

以下のように末尾の句読点やはてなマークを残したまま分割したいときの解決法を紹介します.

[
"すごい!",
"さすがですね。",
"他には何か特技はありますか?"
]

splitメソッドだと以下のようになってしまいます.

.py
sentence = "すごい!さすがですね。他には何か特技はありますか?"
print(sentence.split('。?!')

# 出力
>> [
"すごい",
"さすがですね",
"他には何か特技はありますか"
]

方法

末尾の句読点やはてなマークごと抽出したい場合はsplitではなく標準ライブラリreにあるfindallメソッドを使いましょう.
以下のように末尾の句読点やはてなマークごと抽出することが出来ます.

.py
sentence = "すごい!さすがですね。他には何か特技はありますか?"
print(re.findall("[^。!?!?、]+[。!?!?、]?", sentence))
# 出力
>> [
"すごい!",
"さすがですね。",
"他には何か特技はありますか?"
]
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3