软件测试|带你了解Python正则表达式模块(一)

前言

正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为regex、regexp或RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为\"元字符\")生活百宝箱,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开来的,后来在广泛运用于Scala 、PHP、C# 、Java、C++ 、Ob穿上衣服的英文jectiv伫立的近义词e-c、Perl 、Swift、VBScript 、Javascript、Ruby 以及Python等等。

Python正则模块介绍

Python的正则模块是re模块,是Python自带的模块,不需要额外安装,re模块拥有下列作用:

re 模块使 Python 语言可以实现全部的正则表达式功能

re 模块也拥有实现正则匹配的函数

基本语法

表达式描述\\d匹配任何十进制操作,与[0-9]一致\\D匹配任意非数字\\w匹配任何数字字母下划线字符\\W匹配非字母数字下划线\\s匹配任何空格字符\\S匹配任意非空字符\\A匹配字符串的开始\\Z匹配字符串的结束.匹配任何字符(\\n除外)

简单举例如下:

import re

sentence = \'hello muller, where are you from不想打扰\'

print(re.findall(\'from\\Z\', sentence))

print(re.findall(\'ffrom\\Z\', sentence))

输出结果如下:

[\'from\']

更多示例:

import re

def had_number(sectence):

result = re.findall(\'\\d\', sectence)

展开全文

print(result)

for i in result:

return True

return False

def remove_number(sectence):

result = re.findall(\'\\D\', sectence)

print(result)

return \'\'.join(result)

def startswith(sub, sectence):

_sub = \'\\A%s\' % sub

result = re.findall(_sub, sectence)

for i in result:

return True

return False

def endswith(sub, sectence):

_sub = \'%s\\Z\' % sub

print(_sub)

result = re.findall(_sub, sectence)

print(result)

if len(result) !=牛奶美白 0:

return True

else:

return False

def real_len(sectence):

result = re.findall(\'\\S\', sectence)

print(result)

return len(result)

if __name__ == \'__mai关于柳的诗句n__\':

sectence = \'i梦见吃橙子 am muller, i am 34\'

result = had_number(sectence)

print(result)

result = remove_number(sectence)

print(result)

打开窗户说亮话sectence = \'hello messi, i am muller. i am 34 year\\\'s old\'

print(re.findall(\'\\W\', sectence))

result = startswith(\'hell\', sectence)

print(result)

result = endswith(\'olds\', sectence)

print(result)

print(len(sectence))

result = real_len(sectence)

print(result)

输出结果如下:

[\'3\', \'4\']

True

[\'i\', \' \', \'a\', \'m\', \' \', \'m\', \'u\', \'l\', \'l\', \'e\', \'r\', \',\', \' \', \'i\', \' \', \'a\', \'m\', \' \']

i am muller, i am

True

olds\\Z

冬虫夏草补什么False

北控置业

44

[\'h\', \'e\', \'l\', \'l\', \'o\', \'m\', \'e\', \'s\', \'s\', \'i\', \',\', \'i\', \'a\', \'m\', \'m\', \'u\', \'l\', \'l\', \'e\', \'r\', \'.\', \'i\', \'a\', \'m\', \'3\', \'4\', \'y\', \'e\', \'a\', \'r\', \"\'\", \'s\', \'o\', \'l\', \'d\']

35

总结

本文对Python 的re模块进行了简单的介绍,下一篇文章我们将对re模块的函数以及更高级的用法进行介绍哈。

更多推荐

软件测试|带你了解Python正则表达式模块(一)