写点什么

Python 基础库 - 正则表达式库

  • 2022-11-30
    北京
  • 本文字数:1119 字

    阅读完需:约 4 分钟

Python基础库-正则表达式库

1.正则表达式

1.1 正则表达概述

正则表达式,又称规则表达式**,**(Regular Expression,在代码中常简写为 regex、regexp 或 RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。


正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。


现代编程语言基本内嵌了正则表达式的库,如 per、python 也不例外。虽然各种语言和库的定义的正则表达式的语法规则会有所不同,但基本内容是相同的。

1.2 正则表达式库

Python 虽然自带正则表达式库 re,但是该库不是自动加载进内存中的,需要使用下面的语句来引入


import re
复制代码


正则表达式的基础是匹配,匹配操作有两个,一个是规则,另一个是输入字符串在匹配的基础上可以进行替换、检索等操作。

1.3 一个简单的例子:检查用户输入的邮箱地址是否合法

一个简单的例子:检查用户输入的邮箱地址是否合法,合法的邮箱地址应该符合下面的格式用户名 @ 主机名
复制代码


# 引入正则表达式库import re

# 定义函数def valid_email_address(addr): result = re.match(r"^[a-zA-z0-9]+@[a-zA-z0-9]+(\.[a-zA-z0-9]+)*$", addr) # 匹配成功 if result is not None: print("[%s] is a valid email address" % addr) # 匹配失败 else: print("[%s] is NOT a valid email address" % addr)

valid_email_address("name")valid_email_address("name@")valid_email_address("name@126.com")
执行结果:"D:\Program Files1\Python\python.exe" D:/Pycharm-work/pythonTest/正则/验证邮箱.py[name] is NOT a valid email address[name@] is NOT a valid email address[name@126.com] is a valid email address
Process finished with exit code 0
复制代码

2.正则表达式-原子

原子是正则表达式中最基本的组成单位,每个正则表达式中至少要包含一个原子。常见的原子类型有:


1.普通字符作为原子 : 如 az、AZ、0~9 等 2.非打印字符作为原子:如 \f \n \r \t \v \cx3.通用字符作为原子:\d \D \w \W \s \S4.原子表:自定义原子表([])作为原子:如:’/[apj]sp/’ ’/[^apj]sp/’5.一些特殊字符和转义后元字符作为原子:所有标点符号,但语句特殊意义的符号需要转义后才可作为原子,如:\” \’ * + ? . 等

3.正则表达式-元字符和语法

在正则表达式中,定义了一些元字符。这些字符一般用来匹配一组字符,如果希望匹配 0-9 这 10 个数字字符,那么便可以用元字符\d。元字符一般是以\开头,后面在跟着一个字符。另外有些语法是描述某个或某组字符出现的频率的,例如。如果认为某个字段是可选的,则可以指定其出现的频率是 0 或者是 1


常用的元字符和语法


发布于: 刚刚阅读数: 3
用户头像

一边做一边变得优秀,加油呀 2022-09-19 加入

大家好,我是小鱼新人来报道哈。 CSDN,阿里云专家.....

评论

发布
暂无评论
Python基础库-正则表达式库_正则_度假的鱼🐟_InfoQ写作社区