[python 学习]正则表达式

re 模块函数
re 模块函数和正则表达式对象的方法
match(pattern,string,flags=0) 尝试使用带有可选的标记的正则表达式的模式来匹配字符串。如果匹配成功,就返回匹配对象;如果失败,就返回None
search(pattern,string,flags=0) 使用可选标记搜索字符串中第一次出现的正则表达式模式。如果匹配成功,则返回匹配对象;如果失败,则返回None
findall(pattern,string [, flags] )① 查找字符串中所有(非重复)出现的正则表达式模式,并返回一个匹配列表
finditer(pattern,string [, flags] )② 与 findall()函数相同,但返回的不是一个列表,而是一个迭代器。对于每一次匹配,迭代器都返回一个匹配对象
split(pattern,string,max=0)③ 根据正则表达式的模式分隔符,split 函数将字符串分割为列表,然后返回成功匹配的列表,分隔最多操作max 次(默认分割所有匹配成功的位置)

re 模块函数和正则表达式对象方法
sub(pattern,repl,string,count=0) ③ 使用 repl 替换所有正则表达式的模式在字符串中出现的位置,除非定义count,否则就将替换所有出现的位置(另见subn()函数,该函数返回替换操作的数目)

常用的匹配对象方法(查看文档以获取更多信息)
group(num=0) 返回整个匹配对象,或者编号为num 的特定子组
groups(default=None) 返回一个包含所有匹配子组的元组(如果没有成功匹配,则返回一个空元组)

# -*- coding: utf-8 -*-
import re

#match()
m0 = re.match(‘aa‘, ‘aa is not AA‘)
print m0.group()

#search()
m2 = re.search(‘aa‘, ‘aa is not AA‘)
print m2.group()

#findall()
m4 = re.findall(‘aa‘, ‘aa1 aa2 aa3‘)
print m4

#sub()
m5 = re.sub(‘aa‘,‘bb‘,‘aa1 aa2 aa3‘)
print m5

#subn()
m5 = re.subn(‘aa‘,‘bb‘,‘aa1 aa2 aa3‘)
print m5

时间: 2024-10-15 06:49:07

[python 学习]正则表达式的相关文章

Python学习 ——正则表达式

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. re 模块使 Python 语言拥有全部的正则表达式功能. compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象.该对象拥有一系列方法用于正则表达式匹配和替换. re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数 1.正则表达式修饰符 --可选标志    正则表达式可以包含一些可选标志修饰符来控制匹配的模式 修饰符被指定为一个可选的标志.多个标志

Python学习——正则表达式

'[ ] ' 能够多个同时匹配 '.'     默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行 '^'     匹配字符开头,若指定flags MULTILINE,这种也可以匹配上(r"^a","\nabc\neee",flags=re.MULTILINE) '$'     匹配字符结尾,或e.search("foo$","bfoo\nsdfsf",flags=re.MULTILINE

Python学习之路-装饰器&生成器&正则表达式

装饰器 通俗的讲,装饰器就是在不改变源代码基础上,给源代码增加新功能. 不改变函数的源代码.调用方式.返回值等,给函数增加新功能. 经典案例:登录装饰器, def login_decorator(func):     def inner():         if USER_TEMP["status"] == False:             print("\033[31;1m用户未登录,请先登录\033[0m")             login_atm()

Python学习笔记——正则表达式入门

# 本文对正则知识不做详细解释,仅作入门级的正则知识目录. 正则表达式的强大早有耳闻,大一时参加一次选拔考试,题目就是用做个HTML解析器,正则的优势表现得淋漓尽致.题外话不多讲,直接上干货: 1. 元字符: 与之对应的还有反义字符,大部分为小写字母变大写,例如\D表示匹配非数字的字符. 2. 重复(即匹配变长的字符串): 元字符可匹配单一的字符类型,若想匹配长度未知或长度限定的字符串需要在后边加上限定符. 3. 范围与分组: 有时元字符并不能满足匹配字符的需求,这时就需要[]来圈定匹配范围,例

python学习笔记八——正则表达式

1.元字符 []-常用来指定一个字符集:[abc];[a-z] -元字符在字符集中不起作用:[akm$] -补集匹配不在区间范围内的字符:[^5] ^-匹配行首 $-匹配行尾 \-后可加不同字符以表示不同意义,也可用于取消所有元字符 \d 匹配任何十进制数,相当于[0-9] \D 匹配任何非数字字符,相当于[^0-9] \s 匹配任何空白字符,相当于[\t\n\r\f\v] \S 匹配任何非空白字符 \w 匹配任何字母数字字符 \W 匹配任何非字母数字字符 *-匹配前一个字符零次或多次 +-至少

Python学习笔记——正则表达式

今天把之前学的正则表达式好好总结总结. 一.元字符 . :  .表示可以匹配任意一个字符 \d  :  \d表示可以匹配任意一个数字 \D  : \D表示可以匹配任意一个非数字 \s  :  \s表示可以匹配任意一个空白字母 \S : \S表示可以匹配任意一个非空白字母 \w : \w表示可以匹配任意一个字符 \W: \W表示可以匹配任意一个非字符 []  : []表示可以匹配括号中的任意的一个字符  例:[abc] , [a-z] , [^ab] ^  : ^表示只匹配字符串的开始部分    

学习 正则表达式 js java c# python 通用

正则表达式 js java c# python 学习网站 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/RegExp 概念 正则表达式是为了解决字符串操作中一些比较麻烦的场景,比如字符串提取.字符串替换.字符串验证等 常用于:表单验证:是否是一个数字.是一个电话号码.是一个邮箱... 字符串替换: 字符串查找 正则表达式其实也是js里面的一个对象 创建一个正则表达式 var reg

Python学习-37.Python中的正则表达式

作为一门现代语言,正则表达式是必不可缺的,在Python中,正则表达式位于re模块. 1 import re 这里不说正则表达式怎样去匹配,例如\d代表数字,^代表开头(也代表非,例如^a-z则不匹配任何小写字符),$代表结尾,这些百科或者其他书籍都有. 例子一,字符串中是否包含数字: 1 import re 2 userinput = input("please input test string:") 3 if re.match(r'\d',userinput): 4 print(

python re模块学习--正则表达式函数

这里主要介绍Python中常用的正则表达式处理函数.关于python中正则表达式的语法会再总结一篇博文. re.match re.match 尝试从字符串的开始匹配一个模式,如:下面的例子匹配第一个单词. 代码如下: #!/usr/bin/env python# -*- coding: utf-8 -*-import retext = "JGood is a handsome boy, he is cool, clever, and so on..."m = re.match(r&qu