首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >单语句中的Python多正则表达式匹配

单语句中的Python多正则表达式匹配
EN

Stack Overflow用户
提问于 2016-01-16 16:30:54
回答 2查看 595关注 0票数 1

我有一个大型Python字符串,如下所示。

代码语言:javascript
运行
复制
large_string = "The MIT License (MIT)\n\nCopyright (c) [year] [fullname]\n\nPermission is hereby granted, free of charge, to any person obtaining a ...."

我希望将字符串中的“年份”替换为当前年份,并将“全名”替换为用户提供的名称。我正在使用python中的re库来完成这个任务。

代码语言:javascript
运行
复制
import re
import datetime

def pattern_replace(large_string, name):
    year = datetime.now().year
    large_string = re.sub('\[year\]', str(year), large_string)
    large_string = re.sub('\[fullname\]', name, large_string)
    return large_string

但我认为这样做不合适。我以前从未真正使用regex匹配,但我认为应该有更多的Pythonic方法来组合这两个re.sub语句。

EN

Stack Overflow用户

发布于 2016-01-16 16:42:41

如果确保将字符串重写为使用{year}{fullname},则可以使用.format()方法填充它们:

代码语言:javascript
运行
复制
from datetime import datetime

def pattern_replace(large_string, name):
    return large_string.format(
        year=datetime.now().year,
        name=name,
    )
票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34829286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档