Python正则表达式
  AnyLlCIhvKpr 2023年11月12日 54 0

一、re 标准库

Python正则表达式

1.1.re.compile方法

语法:re.compile(pattern, flags=0)

pattern 指的是正则表达式。flags是标志位的修饰符,用于控制表达式匹配模式

示例:

import re

s = 'this is test string'
pattern = re.compile('this')    # 定义一条正则
result = pattern.match(s)
print(result.group())           # 匹配成功后,result对象会增加一个group()方法,可以用它来获取匹配结果

1.2.re.match()方法——推荐

import re

s = 'this is test string'

result = re.match('this', s)	# 从左往右匹配;如果换成test会失败
if result:
    print('匹配成功')
    print(result.group())
else:
    print('匹配失败')

二、代表字符

Python正则表达式

>>> import re
>>> s = 'hello world'
>>> result = re.match('.', s)		# 匹配单个字符
>>> result.group()
'h'

>>> result = re.match('[ah]', s)	#匹配中括号中的任意一个字符
>>> result.group()
'h'

>>> result = re.match('[a-z]', s)	#匹配所有小写字母
>>> result.group()
'h'

>>> result = re.match('\D', s)		#匹配非数字字符
>>> result.group()
'h'

三、原始字符串符号“r”

“r”表示原始字符串,有了它,字符串里的特殊意义符号就会自动加转义符
示例:

s = "123\\abc"
result = re.match(r"123\\abc", s)
print(result)

Python正则表达式

四、代表数量

Python正则表达式
Python正则表达式

>>> result = re.match('.*', s)		# 匹配所有
>>> result.group()
'hello world'

五、代表分组

Python正则表达式

六、示例

import re

email = "devops@163.com"
result = re.match("^[a-z]+@[163|qq]+\.[com|cn|org]+$", email)
if result:
    print("邮箱格式正确")
else:
    print("邮箱格式错误")
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月12日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年05月31日   38   0   0 python开发语言
  TEZNKK3IfmPf   2024年05月31日   28   0   0 python
  TEZNKK3IfmPf   2024年05月31日   30   0   0 python
AnyLlCIhvKpr