【python2】正则表达式-中文标点
来源:互联网 发布:音频剪辑 知乎 编辑:程序博客网 时间:2024/06/06 05:51
# -*- coding:utf-8 -*-
line = "测试。,。去除标点。,是吗?"
reg = re.compile("[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b]")#此句在去除标点方面实验发现未起到作用。
word =[]
string = re.sub("[,。?]+".decode('utf8'),''.decode('utf8'),line.decode('utf8'))#将line里面的标点用空格代替
print string
print 'regex:',(regex.sub(' ',line.decode('utf8'))) #将line里面的标点用空格代替
print 'wc:',wc
print len(wc)
for i in range(len(wc)):
print wc[i]
punc = r"!?。"#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、、〃》「」『』【】〔〕〖〗〘〙〚〛〜〝〞〟〰〾〿–—‘’‛“”„‟…‧﹏."
punc = punc.decode("utf-8")
print re.sub("[%s]+" %punc, ''.decode('utf8'),line.decode('utf8'))
import re
#r代表原始符号,不需要进行转义,不然需要加\代表原始符号
#u代表utf8编码 u"[。,!?‘“]+" 和"[,。?]+".decode('utf8') 效果相同
line = "测试。,。去除标点。,是吗?"
reg = re.compile("[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b]")#此句在去除标点方面实验发现未起到作用。
word =[]
string = re.sub("[,。?]+".decode('utf8'),''.decode('utf8'),line.decode('utf8'))#将line里面的标点用空格代替
print string
print 'regex:',(regex.sub(' ',line.decode('utf8'))) #将line里面的标点用空格代替
word.append(re.split(r"[。,?]+".decode('utf8'),line.decode('utf-8')))
#** 此句的word是一个二维数组,因此并不会以汉字形式显示,可以与下面的wc比较,wc是一维的,会以汉字形式显示
wc=re.split(r"[。,?]+".decode('utf8'),line.decode('utf-8'))print 'wc:',wc
print len(wc)
for i in range(len(wc)):
print wc[i]
punc = r"!?。"#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、、〃》「」『』【】〔〕〖〗〘〙〚〛〜〝〞〟〰〾〿–—‘’‛“”„‟…‧﹏."
punc = punc.decode("utf-8")
print re.sub("[%s]+" %punc, ''.decode('utf8'),line.decode('utf8'))
print re.split("[%s]+"%punc,line.decode('utf8'))
# ** split之后变成一个列表形式,汉字在列表中只能以Unicode表示,单拿出来可以以汉字形式显示,可以参见wc
结果:
string: 测试去除标点是吗
regex: 测试 去除标点 是吗
word: [[u'\u6d4b\u8bd5\u3002\uff0c\u3002\u53bb\u9664\u6807\u70b9\u3002\uff0c\u662f\u5417\uff1f']]
wc: [u'\u6d4b\u8bd5', u'\u53bb\u9664\u6807\u70b9', u'\u662f\u5417', u'']
len(wc): 4
wci: 测试
wci: 去除标点
wci: 是吗
wci:
resub;: 测试去除标点是吗
[u'\u6d4b\u8bd5', u'\u53bb\u9664\u6807\u70b9', u'\u662f\u5417', u'']
阅读全文
0 0
- 【python2】正则表达式-中文标点
- 正则表达式按标点截取一定长度的中文内容
- 利用正则表达式匹配标点问题
- 学习Python2(正则表达式)
- Java删除/清除/过滤标点(所有中英文标点)的正则表达式
- 正则表达式:去除标点符合和特殊字符
- 标点结尾识别,正则表达式的正确写法
- Java 简单高效处理字符串-删除所有标点,正则表达式
- 删除/清除/过滤标点(所有中英文标点)的正则表达式——Desktop Search开发笔记【经验积累】
- java正则替换标点
- java正则替换标点
- php处理中文标点
- 过滤中文标点
- C++识别中文标点
- Python 中文去标点
- 全角,半角 和 中文标点,英文标点
- 验证中文正则表达式
- 正则表达式之中文
- Jquery里面的$(this)和this的区别
- android Service简介备忘
- eclipse打不开的常见错误
- System memory 249364480 must be at least 471859200
- iOS视频播放横竖屏切换技巧
- 【python2】正则表达式-中文标点
- MySQL主从复制与读写分离
- Redis集群的操作
- java设计模式之抽象工厂模式
- 02.Spring Cloud学习笔记之Spring Boot配置文件详解
- 第六场训练赛总结
- 完整java开发中JDBC连接数据库代码和步骤
- MyEclipse+JBoss开发部署jsp和servlet入门
- 机器学习之提升