从入门开始,python学习(七)

一 正则表达式

1.1 简介

正则表达式是一个特殊的字符序列,能方便的检查一个字符串是否与某种模式匹配
re 模块使 Python 语言拥有全部的正则表达式功能

1.2 re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。

函数语法:
re.match(pattern, string, flags=0)
函数参数说明
pattern	匹配的正则表达式
string	要匹配的字符串。
flags	标志位,用于控制正则表达式的匹配方式
匹配成功re.match方法返回一个匹配的对象,否则返回None

实例

#!/usr/bin/python
#-*- coding: UTF-8 -*- 
import re
print(re.match('www', 'www.runoob.com').span())#在起始位置匹配
print(re.match('com', 'www.runoob.com'))#不在起始位置匹配

以上实例运行输出结果为:
(0, 3)
None
1.3 re.search方法

re.search 扫描整个字符串并返回第一个成功的匹配。

函数语法:
re.search(pattern, string, flags=0)
函数参数说明:
pattern	匹配的正则表达式
string	要匹配的字符串。
flags	标志位,用于控制正则表达式的匹配方式
匹配成功re.search方法返回一个匹配的对象,否则返回None
实例
#!/usr/bin/python
#-*- coding: UTF-8 -*- 
import re
print(re.search('www', 'www.runoob.com').span())#在起始位置匹配
print(re.search('com', 'www.runoob.com').span())#不在起始位置匹配

以上实例运行输出结果为:
(0, 3)
(11, 14)
1.4 正则表达式实例
1.4.1 字符类
  1. [0-9] 匹配任何数字。类似于 [0123456789]
  2. [a-z] 匹配任何小写字母
  3. [A-Z] 匹配任何大写字母
  4. [a-zA-Z0-9] 匹配任何字母及数字
  5. [^aeiou] 除了aeiou字母以外的所有字符
  6. [^0-9] 匹配除了数字外的字符
1.4.2 特殊字符类
  1. 匹配除 “\n” 之外的任何单个字符。要匹配包括 ‘\n’ 在内的任何字符,请使用象 ‘[.\n]’ 的模式
  2. \d 匹配一个数字字符。等价于 [0-9]
  3. \D 匹配一个非数字字符。等价于 [^0-9]
  4. \s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]
  5. \S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]
  6. \w 匹配包括下划线的任何单词字符。等价于’[A-Za-z0-9_]’
  7. \W 匹配任何非单词字符。等价于 ‘[^A-Za-z0-9_]’

猜你喜欢

转载自blog.csdn.net/HONGTester/article/details/109149294