python_正则表达式_re

Posted 1142783691

tags:

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

一。正则表达式初识

1.定义:

又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

2.使用

1)导入re模块

import re

常用正则表达式的表示方法:

单个字符匹配:

 

 

 

数量匹配:

 

 边界匹配:

 

 

 

2)运用:

正则表达式前需要加r,如:r“a\\A”

1.匹配

my_re = "xiangwangshiheyuanfang"
#match,从最开始的地方进行匹配,若没有返回None
print(re.match(r"wang",my_re))
#search,不区分前后,任意匹配
print(re.search(r"wang",my_re))
运行结果:

 

 

3)获得匹配结果:

#group(),获取匹配的内容
re_result=re.search(r"wang",my_re)
print(re_result.group())

#re.findall 返回所有的匹配结果。
print(re.findall(r"g",my_re))
运行结果:

 

 

3.常用匹配方式:

1.单个字符匹配

1)‘.’

#匹配一个字符,除了\\n
print(re.search(r".",my_re))
#匹配a后面的一个字符
print(re.search(r"a.",my_re))
运行结果:

 

 注意:

1.匹配是从左边第一个开始的。

2.‘.’前面加上字符后,会返回字符+字符后面的字符,‘.’后面加字符也是同理

 

2)‘[]’

#匹配[]中的某一个字符
print(re.search(r\'[agw]\',my_re))
运行结果:

 

 

3)\\d、\\D

my_remath="xiangwangshiheyuanfang521@"
#\\d 匹配一个数字
print(re.search(r"\\d",my_remath))
#\\D匹配一个非数字
print(re.search(r"\\D",my_remath))
运行结果:

 

 注意:

#[0-9]与\\d等价

print(re.search(r"[0-9]",my_remath))
运行结果:

 

 

4)\\w与\\W

my_remath="_xiangwangshiheyuanfang521@"
#匹配 大写小字母和_
print(re.search(r"\\w",my_remath))
#匹配非单词字符
print(re.search(r"\\W",my_remath))
运行结果:

 

 

2.匹配 数量

1)*

#匹配*前面的字符任意次,有可能没有
print(re.search(r"\\D*",my_remath))
第运行结果:

 

 

2)+、?

#+极可能多的匹配,?只匹配一次
print(re.search(r"\\d+",my_remath))
print(re.search(r"\\d+?",my_remath))
运行结果:

 

 

3){m}

my_remath="_xiaaangwangshiheyuanfang521@"
#匹配a出现过几次,从结果中可以看出只对连在一起的值匹配有效果
print(re.search(r"a{1,}",my_remath))
#不连在一起的值
print(re.search(r"g",my_remath))
运行结果:

 

 

 4.替换数据

1)sub

sub(pattern, repl, string, count=0, flags=0)
my_remath="_xiaaangwangshiheyuanfang#需要实力#521@"
#正则提取表达式
pattern=r"#(.*?)#"
#需要替换的值
value_group="需要money"
#执行替换操作,count代表替换次数,0代表全部替换
print(re.sub(pattern,value_group,my_remath,1))
运行结果:

 

 

 

 4.利用添加类属性动态替换测试用例中的固定值

待续ing

 

count

以上是关于python_正则表达式_re的主要内容,如果未能解决你的问题,请参考以下文章

python_正则表达式_re

Python基础13_正则表达式,re模块,

python__标准库 : 正则表达式(re)

python爬虫 正则表达式 re.finditer 元字符 贪婪匹配 惰性匹配

Python基础(13)_python模块之re模块(正则表达式)

re正则匹配模块_python