python里使用正则表达式的预先定义集合字符

原创 2017年10月10日 19:51:56
在前面我们学习了使用正则表达式的字符集合的表示方法,可以采用枚举的方法,也可以采用连接符的方法,但是还是觉得有些麻烦,比如字符集合,数字集合等等,这些集合可以预先定义好,这不是更加方便了吗?因此在正则表达式里就预先定义下面的这些集合:
代码 意义
\d 数字集合
\D 非数字集合
\s 分隔符 (tab, space, newline, etc.)
\S 非分隔符
\w 字母,数字,下划线
\W 非(字母,数字,下划线)


在这些集合前面有反斜线符号,它就叫做转义符号,意思是说在它后面字母的意义不一样。例子如下:

#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
from re_test_patterns import test_patterns

test_patterns(
    'A prime #1 example!',
    [(r'\d+', 'sequence of digits'),
     (r'\D+', 'sequence of non-digits'),
     (r'\s+', 'sequence of whitespace'),
     (r'\S+', 'sequence of non-whitespace'),
     (r'\w+', 'alphanumeric characters'),
     (r'\W+', 'non-alphanumeric')],
)


结果输出如下:
'\d+' (sequence of digits)


  'A prime #1 example!'
  .........'1'


'\D+' (sequence of non-digits)


  'A prime #1 example!'
  'A prime #'
  ..........' example!'


'\s+' (sequence of whitespace)


  'A prime #1 example!'
  .' '
  .......' '
  ..........' '


'\S+' (sequence of non-whitespace)


  'A prime #1 example!'
  'A'
  ..'prime'
  ........'#1'
  ...........'example!'


'\w+' (alphanumeric characters)


  'A prime #1 example!'
  'A'
  ..'prime'
  .........'1'
  ...........'example'


'\W+' (non-alphanumeric)


  'A prime #1 example!'
  .' '
  .......' #'
  ..........' '

  ..................'!'

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

Python游戏开发入门

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

你也能动手修改C编译器

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

纸牌游戏开发

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


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

(一) 正则表达式快速入手指南之字符集合表达式(包含个人总结)

我们都知道,正则表达式可以很方便地对字符串进行匹配、查找、分割等操作。但是,面对看似复杂的符号组合,自己就曾被唬过,感觉这是一种难以理解的语法,所以碰到的时候也就查查对应的正则表达式是表示什么意思,并...
  • wendingzhulu
  • wendingzhulu
  • 2014年07月26日 20:16
  • 1852

常用正则表达式集合

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。 用户名:/^[a-z0-9_-]{3,16}$/ 密码:/^[a-z0-9_-]{6,18...
  • zhtsuc
  • zhtsuc
  • 2016年07月19日 12:03
  • 2199

regex 正则表达式 需要转义的特殊字符 以及 java、python实现

在对mongoDB通过正则表达式regex进行模糊查询时,发现一些特殊字符无法查询,比如“(”等,通过查阅资料,发现需要对一些特殊字符进行转义,需要转义的特殊字符有* . ? + $ ^ [ ] ( ...
  • l347129991
  • l347129991
  • 2017年04月20日 13:56
  • 3216

python 正则表达式 字符串的 匹配 替换 分割 查找

In [1]: import re In [2]: str1='imooc video=1000' In [3]: str1.find('1000')#可以查找出索引值 Out[3]: 12 I...
  • GoodLuckAC
  • GoodLuckAC
  • 2016年12月08日 15:10
  • 6122

Python3 正则表达式特殊符号及用法(详细列表)

Python3 正则表达式特殊符号及用法(详细列表) 正则表达式的强大之处在于特殊符号的应用,特殊符号定义了字符集合、子组匹配、模式重复次数。正是这些特殊符号使得一个正则表达式可以匹配字符串...
  • riba2534
  • riba2534
  • 2017年01月09日 14:20
  • 2295

Python3 如何优雅地使用正则表达式(详解一)

注:本文翻译自 Regular Expression HOWTO,小甲鱼童鞋对此做了一些注释和修改。 正则表达式介绍 正则表达式(Regular expressions 也称为 R...
  • goodboy5201314
  • goodboy5201314
  • 2015年01月12日 14:23
  • 3105

python核心编程-正则表达式之-重复、特殊字符、子组

#!/usr/bin/env python # -*- coding: UTF-8 -*-import repatt = '\w+@(\w+\.)?\w+\.com' m = re.match(pat...
  • youhaibo1990
  • youhaibo1990
  • 2016年01月12日 23:23
  • 1068

正则表达式 匹配罗马数字 并且返回匹配到的值

正则 罗马数字
  • u013776081
  • u013776081
  • 2015年01月22日 10:19
  • 2728

Python详说正则表达式(对常用的关键字符的讲解)

官方网址 模块re { re模块提供了一个正则表达式引擎的接口,可以让你将REstring编译在对象并用它们来进行匹配 } 疑问:字符串前加r的作用,反斜杠就不会被...
  • sinat_32124195
  • sinat_32124195
  • 2016年05月10日 14:37
  • 874

Python3 如何优雅地使用正则表达式(详解二)

使用正则表达式 现在我们开始来写一些简单的正则表达式吧。Python 通过 re 模块为正则表达式引擎提供一个接口,同时允许你将正则表达式编译成模式对象,并用它们来进行匹配。 小甲鱼解释:...
  • goodboy5201314
  • goodboy5201314
  • 2015年01月12日 14:28
  • 2156
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python里使用正则表达式的预先定义集合字符
举报原因:
原因补充:

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