首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python 3中的Unicode Regex (来自Python 2代码)

Python 3中的Unicode Regex (来自Python 2代码)
EN

Stack Overflow用户
提问于 2016-12-16 17:47:26
回答 2查看 1K关注 0票数 2

我正在尝试将我的Python 2脚本转换为Python 3。我们如何使用Unicode进行正则表达式?

这是我在Python 2中的工作原理,它将引号替换为«和»:

text = re.sub(ur'"(.*?)"', ur'«\1»', text)

我有一些非常复杂的问题,"ur“让它变得如此简单。但它在Python 3中不起作用:

text = re.sub(ur'ه\sایم([\]\.،\:»\)\s])', ur'ه\u200cایم\1', text)

EN

回答 2

Stack Overflow用户

发布于 2016-12-16 17:51:41

默认情况下,Python3中的所有字符串都是unicode。只需移除u,就应该没问题了。

在unicode中,字符串默认是字节列表,所以我们使用u将它们标记为Python2字符串。

票数 4
EN

Stack Overflow用户

发布于 2016-12-16 18:26:23

从Python3.0开始,该语言以包含Unicode字符的str类型为特色,这意味着使用"unicode rocks!“、'unicode rocks!‘或三重引号的字符串语法创建的任何字符串都将存储为Unicode。

Unicode HOWTO此文档将为您提供帮助。

所以,你只需要在Python2中做的每一件事,它都会起作用,没有额外的效果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41181453

复制
相关文章

相似问题

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