Pythonを使用してテキストを句読点で切り分ける
2436 ワード
分詞ツールパッケージ、例えばjiebaを使用すると、文を簡単に異なる単語に切り分けることができますが、文全体を切り分ける必要がある場合は、どうすればいいのでしょうか.段落を句点によって文全体 に切り分ける.
1.jieba分詞は単語を切り分けることができる
中国語の自然言語処理を行う場合、分詞は一般的な操作です.たとえば、次のようになります.
このコードを使用して、このテキスト情報に分詞と語性表示を行うと、次のような結果が得られます(一部省略).
2.文全体を切り分ける——句読点で切り分ける
単語を切り分ける必要はありません.文全体を切り分ける必要があります.つまり、句読点で切り分ける必要があります.では、このようにすることができます.
これは正規表現を用いた文全体の切り分けであり,結果として以下のように句読点が自動的に切り分けられる.
3.全文を切り分ける——句点で切り分ける
コンマを残して句点で文全体を切り分けるには、完全な文が必要かもしれません.どうすればいいですか.正規表現のカンマを外すだけでいい
結果は次のとおりです.
getは着きましたか?
1.jieba分詞は単語を切り分けることができる
中国語の自然言語処理を行う場合、分詞は一般的な操作です.たとえば、次のようになります.
import jieba.posseg as pseg
txt = "【# 4S # 】4 13 , 4S , 。4S , , , ,“ 。” 。# # "
words = pseg.cut(txt)
for word, flag in words:
print('%s %s' % (word, flag))
このコードを使用して、このテキスト情報に分詞と語性表示を行うと、次のような結果が得られます(一部省略).
【 x
# x
v
b
n
...
2.文全体を切り分ける——句読点で切り分ける
単語を切り分ける必要はありません.文全体を切り分ける必要があります.つまり、句読点で切り分ける必要があります.では、このようにすることができます.
import re
txt = "【# 4S # 】4 13 , 4S , 。4S , , , ,“ 。” 。# # "
pattern = r',|\.|/|;|\'|`|\[|\]||\?|:|"|\{|\}|\~|!|@|#|\$|%|\^|&|\(|\)|-|=|\_|\+|,|。|、|;|‘|’|【|】|·|!| |…|(|)'
result_list = re.split(pattern, txt)
print(result_list)
これは正規表現を用いた文全体の切り分けであり,結果として以下のように句読点が自動的に切り分けられる.
['', '', ' 4S ', '', ' ', '4 13 ', ' 4S ', ' ', '4S ', ' ', ' ', ' ', '“ ', '” ', '', ' ', '', '']
3.全文を切り分ける——句点で切り分ける
コンマを残して句点で文全体を切り分けるには、完全な文が必要かもしれません.どうすればいいですか.正規表現のカンマを外すだけでいい
import re
txt = "【# 4S # 】4 13 , 4S , 。4S , , , ,“ 。” 。# # "
#pattern = r',|\.|/|;|\'|`|\[|\]||\?|:|"|\{|\}|\~|!|@|#|\$|%|\^|&|\(|\)|-|=|\_|\+|,|。|、|;|‘|’|【|】|·|!| |…|(|)'
pattern = r'\.|/|;|\'|`|\[|\]||\?|:|"|\{|\}|\~|!|@|#|\$|%|\^|&|\(|\)|-|=|\_|\+|。|、|;|‘|’|【|】|·|!| |…|(|)'
result_list = re.split(pattern, txt)
print(result_list)
結果は次のとおりです.
['', '', ' 4S ', '', ' ', '4 13 , 4S , ', '4S , , , ,“ ', '” ', '', ' ', '', '']
getは着きましたか?