面试题答案
一键面试import re
# 创建正则表达式模式,匹配数字0 - 9和小写字母a - z
pattern = re.compile(r'[0-9a-z]')
# 示例字符串
text = "a1b2c3"
# 使用模式进行匹配
matches = pattern.finditer(text)
for match in matches:
print(match.group())
解释:
import re
:导入Python的正则表达式模块re
,这是使用正则表达式功能的基础。re.compile(r'[0-9a-z]')
:re.compile()
函数用于将正则表达式的字符串形式编译为一个Pattern
对象,这样可以提高匹配效率,特别是在多次使用同一个正则表达式时。r'[0-9a-z]'
是一个原始字符串(r
前缀表示原始字符串,其中的反斜杠不会被特殊处理),代表一个字符集。[0-9]
表示匹配0到9的任意一个数字,[a - z]
表示匹配a到z的任意一个小写字母,将它们组合在一个[]
中,意味着匹配数字0 - 9或者小写字母a - z中的任意一个字符。
text = "a1b2c3"
:定义一个示例字符串,用于后续的匹配操作。pattern.finditer(text)
:使用编译好的Pattern
对象的finditer()
方法,在给定的字符串text
中查找所有匹配的子串,返回一个迭代器。for match in matches:
循环遍历迭代器中的每一个匹配结果,并通过match.group()
获取匹配到的具体字符并打印出来。