Python re.match用法详解
作者:WeekendFlower
时间:2025-11-26
浏览:0
re.match用于从字符串开头匹配模式,若开头不匹配则返回None;其语法为re.match(pattern,string,flags=0),常用于判断前缀匹配或提取起始内容,如匹配成功可使用group()获取结果,否则应使用re.search进行全局查找。
re.match用于从字符串开头匹配模式,若开头不匹配则返回None;其语法为re.match(pattern, string, flags=0),常用于判断前缀匹配或提取起始内容,如匹配成功可使用group()获取结果,否则应使用re.search进行全局查找。

re.match 是 Python 正则表达式模块 re 中的一个函数,用于从字符串的开头匹配一个模式。如果开头不匹配,则返回 None,不会继续向后查找。
基本语法
re.match(pattern, string, flags=0)
- pattern:正则表达式模式
- string:要匹配的字符串
- flags:可选标志位,如 re.IGNORECASE、re.MULTILINE 等
返回值是一个 match 对象,包含匹配信息;如果没有匹配,则返回 None。
常见用法示例
判断字符串是否以某个模式开头:
import retext = "Hello World"
result = re.match(r"Hello", text)
if result:
print("匹配成功:", result.group())
else:
print("不匹配")
输出:匹配成功: Hello
注意:下面这个例子会失败,因为 match 只检查开头:
text = "Say Hello"result = re.match(r"Hello", text) # 返回 None
如果想在任意位置查找,应使用 re.search()。
提取匹配内容
通过 group() 方法获取匹配的子串:
text = "Username123"result = re.match(r"(\w+)(\d+)", text)
if result:
print("全部匹配:", result.group(0))
print("第一组:", result.group(1)) # 字母部分
print("第二组:", result.group(2)) # 数字部分
输出:
- 全部匹配: Username123
- 第一组: Username
- 第二组: 123
使用标志位
忽略大小写匹配:
text = "hello world"result = re.match(r"HELLO", text, re.IGNORECASE)
# 或者写成 re.match(r"HELLO", text, re.I)
if result:
print("匹配成功")
基本上就这些。记住:re.match 只管开头,不管中间。需要全局搜索时换 re.search 或 re.findall。不复杂但容易忽略这一点。
作者最新文章
赤友清理大师
2026-09-16 17:43
南邮光擎智算团队:GaN基Micro-LED光计算芯片从理论到流片的突破
2026-09-08 18:35
多张照片怎么合成PDF文件?三种图片转PDF工具怎么选?
2026-09-03 17:04
Excel转PDF防乱版指南:在线与本地双方案及排版检查
2026-09-03 10:04
多个PDF怎么合并成一个?合并后顺序怎么检查?
2026-09-02 19:54
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多

































