python正则表达式中group使用方法
在 Python 中使用正则表达式,可以使用 re 模块的 search、findall 和 finditer 函数来匹配字符串。在匹配过程中,使用圆括号 () 可以创建一个捕获组,将匹配到的子字符串提取出来。
使用 group 方法可以获取捕获组的匹配结果。以下是一个使用正则表达式和捕获组的示例代码:
import re text = "my email is john@example.com" pattern = r"(\w+)@(\w+)\.com" match = re.search(pattern, text) if match: username = match.group(1) domain = match.group(2) print("username: ", username) print("domain: ", domain)
上面的代码中,(\w+) 匹配一个或多个字母、数字或下划线,@ 匹配一个 @ 符号,(\w+).com 匹配一个或多个字母、数字或下划线,后面跟着一个 .com。使用 search 函数查找字符串 text 中的匹配,使用 group 方法获取捕获组的结果。
上述代码将会输出以下内容:
username: john domain: example
其中,john 和 example 分别是用户名和域名的结果。如果有多个捕获组,可以使用 group(n) 来获取第 n 个捕获组的匹配结果,其中 n 从 1 开始计数。如果想获取所有的捕获组的匹配结果,可以使用 groups 方法,返回一个元组。如果正则表达式中没有使用圆括号创建捕获组,可以使用 group() 或 group(0) 来获取整个匹配结果。
相关文章