re模块

Posted zzymiss

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了re模块相关的知识,希望对你有一定的参考价值。

# 元字符     匹配内容
# . 匹配除换行符意外任意字符串
# \w 匹配字母或数字下划线
# \d 匹配数字
# \s 匹配任意空白符
# \W \D \S 和 |w \d \s 相反
# \n 匹配换一个行符 回车
# \t 匹配一个 tab
# 空格 匹配空格
# ^ 匹配字符串的开始
# $ 匹配字符串的结尾
# \b 匹配一个单词结尾
# [] 出现在[]里面匹配
# [^] 出现在[]里面字符不匹配
# | 或 匹配左边或右边
# () 量词用法说明
# * 重复零次或更多次
# + 重复一次或更多次
# ? 重复零次或一次
# n 重复n次
# n, 重复n次或更多次
# n,m 重复n到m次

# 查找
import re
# findall : 匹配所有 每一项都是列表中的元素
# ret=re.findall(‘\d+‘,‘sfddsafds123fdsafhg45‘) # 正则表达式 匹配所有字符串中的数字 [‘123‘, ‘45‘]
# ret=re.findall(‘\d‘,‘sfddsafds123fdsafhg45‘) # 正则表达式 匹配所有字符串中的数字 [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
# print(ret)

# search : 从左到右匹配
# ret = re.search(‘\d+‘,‘192.168.1.10‘)
# print(ret) 拿到的是内纯地址
# if ret:
# print(ret.group()) # 通过group()取值

# match :从头开是匹配。相当于search 中的正则表达式加上^
# ret = re.match(‘\d+$‘,‘1245sda‘) 在判断手机使我们可用少些^
# if ret:
# print(ret)

# 处理字符串的 :替换 ,切割
# split
# s = ‘sfds123sdaf456sdfa‘
# ret = re.split(‘\d+‘,s)
# print(ret) [‘sfds‘, ‘sdaf‘, ‘sdfa‘]

# sub 替换类型 替换新的 要替换字符串 替换次数
# ret=re.sub(‘\d+‘,‘#‘,‘sfds123sdaf456sdfa‘)
# print(ret)

# ret = re.sub(‘\d+‘,‘#‘,‘sfds123sdaf456sdfa‘,1)
# print(ret)

# subn 返回一个元祖 有返回值
# ret = re.subn(‘\d+‘,‘#‘,‘sfds123sdaf456sdfa‘,1)
# print(ret)

# compile 节省时间问题 先编译 在使用
# ret = re.compile(‘\d+‘)
# res=ret.search(‘dfsafsda123‘)
# print(res.group())

# finditer 解决空间内存问题 返回一个迭代器
# ret = re.finditer(‘\d+‘,‘192.168.10.1‘)
# for i in ret:
# print(i.group())
# import sys, time, os
# try:
# import pexpect
# except ImportError:
# print( """
# 没有pexpect 模块
# """)
# sys.exit(1)
# addr_map =
# ‘v3‘ :(‘root@192.168.1.162‘, ‘sina@2009‘),
# ‘dev‘:(‘test016@192.168.1.136‘, ‘test016‘),
#
import paramiko

以上是关于re模块的主要内容,如果未能解决你的问题,请参考以下文章

re模块的高级用法

python3怎么导入re模块

Python模块-re模块

python re模块

re模块

python常用模块之re模块(正则)