文本预处理去除标点符号

NLP 分词或word2vec之前,一般都需要先进行标点符号的预处理,直接上解决的代码,精简。

#!/usr/bin/env python
# coding=utf-8

from string import punctuation
import re
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

import codecs

# 英文标点符号+中文标点符号
punc = punctuation + u'.,;《》?!“”‘’@#¥%…&×()——+【】{};;●,。&~、|\s::'

print punc

fr = codecs.open('./train_jkm.txt',encoding='utf-8')
fw = codecs.open('./train_clean.txt','w',encoding='utf-8')

# 利用正则表达式替换为一个空格
for line in fr:
    line = re.sub(r"[{}]+".format(punc)," ",line)
    fw.write(line+' ')

fr.close()
fw.close()

 

posted on 2015-07-27 16:57  星空守望者--jkmiao  阅读(3223)  评论(0编辑  收藏  举报