Python re.fullmatch() 方法用于检查整个字符串是否与给定的正则表达式模式匹配。
与 re.match() 方法不同,re.match() 方法仅从字符串的开头开始匹配,而 re.fullmatch() 方法确保模式跨越整个字符串。如果模式完全匹配,则返回 match 对象,否则返回 None。
当我们需要验证字符串是否完全符合特定格式时,此方法非常有用。
语法
以下是 Python re.fullmatch() 方法的语法和参数 -
re.fullmatch(pattern, string, flags=0)
参数
以下是 python re.fullmatch() 方法的参数 -
- pattern:要匹配的正则表达式模式。
- string:要与模式匹配的字符串。
- flags(可选):这些标志修改匹配行为
返回值
如果在字符串中找到模式,则此方法返回 match 对象,否则返回 None。
示例 1
以下是使用 re.fullmatch() 方法的基本示例。在此示例中,模式 '\d+' 匹配一个或多个数字,该数字与整个字符串 '123456' 完全匹配 -
import re
result = re.fullmatch(r'\d+', '123456')
if result:
print("Full match found:", result.group())
输出
Full match found: 123456
示例 2
在此示例中,模式 '\w+' 匹配一个或多个字母数字字符,这些字符与字符串 'abc123' 完全匹配 -
import re
result = re.fullmatch(r'\w+', 'abc123')
if result:
print("Full match found:", result.group())
输出
Full match found: abc123
示例 3
在此示例中,我们使用 re.IGNORECASE 标志,用于使模式不区分大小写,允许 '你好' 与 'HELLO' 完全匹配 -
import re
result = re.fullmatch(r'hello', 'HELLO', re.IGNORECASE)
if result:
print("Full match found:", result.group())
输出
Full match found: HELLO
示例 4
以下示例检查字符串是否完全匹配 -
import re
result = re.fullmatch(r'\d+', '123abc')
if result:
print("Full match found:", result.group())
else:
print("No full match found")
输出
No full match found