首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Python中的英文逗号代替汉语标点符号

用Python中的英文逗号代替汉语标点符号
EN

Stack Overflow用户
提问于 2019-07-05 03:14:03
回答 2查看 1K关注 0票数 2

对于中文单词:上海,北京、武汉;重庆。欢迎你!你好,我想用逗号代替中文标点符号,我如何在Python中使用regex呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-05 03:17:34

使用re模块的一种方法

代码语言:javascript
复制
import re
str='上海,北京、武汉;重庆。欢迎你!你好'
s = re.sub(r'[^\w\s]',',',str)
print(s)

输出:

代码语言:javascript
复制
上海,北京,武汉,重庆,欢迎你,你好

Explanation

[^\w\s]-匹配下面列表中的单个字符而不是-

代码语言:javascript
复制
1. \w matches any word character (equal to [a-zA-Z0-9_])
2. \s matches any whitespace character (equal to [\r\n\t\f\v ])
票数 3
EN

Stack Overflow用户

发布于 2019-07-05 03:15:30

这是我的解决方案,但还有一个感叹号:

代码语言:javascript
复制
strings = "上海,北京、武汉;重庆。欢迎你!你好"    
punc = "[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b]"
string = re.sub(punc, ",", strings)
print(string)

输出:

代码语言:javascript
复制
上海,北京,武汉,重庆,欢迎你!你好
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56896099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档