python里使用正则表达式的ASCII模式

原创 2017年11月01日 20:50:50
目前,基本上都使用python3来开发了,但是有时为了兼容旧的python2的代码,在正则表达式里主要是字符串的表示方式不同了,在python3里是使用Unicode来表示字符串和正则表达式,而在python2里是使用ASCII来表示的,所以在python3里怎么样设置才兼容旧的方式呢?其实可以通过ASCII的标志来解决,如下面的例子:
#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
import re

text = u'Français złoty Österreich'
pattern = r'\w+'
ascii_pattern = re.compile(pattern, re.ASCII)
unicode_pattern = re.compile(pattern)

print('Text    :', text)
print('Pattern :', pattern)
print('ASCII   :', list(ascii_pattern.findall(text)))
print('Unicode :', list(unicode_pattern.findall(text)))



结果输出如下:
Text    : Français złoty Österreich
Pattern : \w+
ASCII   : ['Fran', 'ais', 'z', 'oty', 'sterreich']

Unicode : ['Français', 'złoty', 'Österreich']

深入浅出Numpy
http://edu.csdn.net/course/detail/6149 

Python游戏开发入门

你也能动手修改C编译器

纸牌游戏开发

http://edu.csdn.net/course/detail/5538 

五子棋游戏开发

http://edu.csdn.net/course/detail/5487
RPG游戏从入门到精通
http://edu.csdn.net/course/detail/5246
WiX安装工具的使用
http://edu.csdn.net/course/detail/5207
俄罗斯方块游戏开发
http://edu.csdn.net/course/detail/5110
boost库入门基础
http://edu.csdn.net/course/detail/5029
Arduino入门基础
http://edu.csdn.net/course/detail/4931
Unity5.x游戏基础入门
http://edu.csdn.net/course/detail/4810
TensorFlow API攻略
http://edu.csdn.net/course/detail/4495
TensorFlow入门基本教程
http://edu.csdn.net/course/detail/4369
C++标准模板库从入门到精通 
http://edu.csdn.net/course/detail/3324
跟老菜鸟学C++
http://edu.csdn.net/course/detail/2901
跟老菜鸟学python
http://edu.csdn.net/course/detail/2592
在VC2015里学会使用tinyxml库
http://edu.csdn.net/course/detail/2590
在Windows下SVN的版本管理与实战 
http://edu.csdn.net/course/detail/2579
Visual Studio 2015开发C++程序的基本使用 
http://edu.csdn.net/course/detail/2570
在VC2015里使用protobuf协议
http://edu.csdn.net/course/detail/2582
在VC2015里学会使用MySQL数据库
http://edu.csdn.net/course/detail/2672




版权声明:本文为博主原创文章,未经博主允许不得转载。

python里使用正则表达式的重复模式

在前面学习的正则表达式,都是把每一个字符写出来的,但是如果有重复的字符,也需要写出来吗?比如重复1000个字符,这时全写出来就不是很聪明的做法了,那么怎么办呢?可以使用某种规则来生成。如下面的例子:#...
  • caimouse
  • caimouse
  • 2017年10月07日 14:14
  • 597

利用ASCII和Unicode写正则表达式

ASCII Unicode 例如,校验密码:必须同时包含字母、数字和特殊字符,6-16位 我们首先来看下特殊字符,一般情况下,我们指的特殊字符包括 !"#$%&'()*+,-./:;?@[\]^...
  • LinBilin_
  • LinBilin_
  • 2017年04月10日 15:58
  • 1970

Python字符编码与正则表达式指南

1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码。计算机世界里一开始...
  • zhoudaxia
  • zhoudaxia
  • 2014年04月12日 14:28
  • 5143

正则表达式中模式修正符作用详解(i、g、m、s、x、e)

什么是模式修正符? 1, 模式修正符就是几个字母,我们在每个正则表达式中可以一次使用一个,也可以连续使用多个,每一个具一定的意义。 2, 模式修正符是对整个正则表达式调优使用,也可以说是对正则表达式功...
  • forest_fire
  • forest_fire
  • 2016年03月21日 11:17
  • 1712

Python 正则表达式里的单行s和多行m模式

原文链接:http://www.lfhacks.com/tech/python-re-single-multiline Python 的re模块内置函数几乎都有一个flags参数,以位运算的...
  • zqxnum1
  • zqxnum1
  • 2016年08月01日 17:33
  • 492

正则表达式中模式修正符作用详解(i、g、m、s、x、e)

正则表达式中常用的模式修正符有i、g、m、s、x、e等。它们之间可以组合搭配使用。 它们的作用如下:  //修正符:i 不区分大小写的匹配;          //如:"/abc/i"可以与abc...
  • onthewaygun
  • onthewaygun
  • 2013年08月16日 19:42
  • 1867

正则表达式的三种模式

正则表达式的匹配有三种模式:
  • tianhaoya
  • tianhaoya
  • 2014年10月27日 19:37
  • 428

Python 3.6 正则表达式一

""" 正则表达式的主要功能就是匹配字符串 """ import re # 基本用法 ret = re.findall('world', "hello world**Worldworld") #...
  • tyrantu1989
  • tyrantu1989
  • 2017年11月01日 17:28
  • 228

UE4正则表达式检测输入信息

本文转自:http://blog.csdn.net/liliangshuai/article/details/53187474 CheckStringIsValid 实现 Retu...
  • sh15285118586
  • sh15285118586
  • 2017年02月02日 23:28
  • 435

使用Python正则表达式RE从CSDN博客源代码中匹配出博客信息

#!coding:utf-8 import re import sys import urllib2 # 测试匹配中文信息 def TestReChinese( ): reload(sy...
  • gatieme
  • gatieme
  • 2015年01月29日 19:23
  • 17456
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python里使用正则表达式的ASCII模式
举报原因:
原因补充:

(最多只允许输入30个字)