首页 > 技术文章 > python校验字符串是否符合正则表达式

zibinchen 2021-07-07 09:35 原文

正则表达式

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

例如:

  • runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)。
  • runoob,可以匹配 runob、runoob、runoooooob 等, 号代表前面的字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。
  • colou?r 可以匹配 color 或者 colour,? 问号代表前面的字符最多只可以出现一次(0次、或1次)。

Python验证的50个常见正则表达式 - TonyX2 - 博客园 (cnblogs.com)

re模块

python中可以使用re.search()方法验证字符串是否符合正则表达式。

re.search()方法扫描整个字符串,并返回第一个成功的匹配。如果匹配失败,则返回None。

语法:

re.search(pattern, string, flags=0)

参数:

  • pattern : 正则中的模式字符串。
  • string : 要被查找替换的原始字符串。
  • flags : 标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

示例:

#encode:u8
 
import re
 
s1 = 'adkkdk'
 
#判断s1字符串是否负责都为小写的正则
an = re.search('^[a-z]+$', s1)
if an:
    print 'yes'
else:
    print 'no'

推荐阅读