【问题标题】:How to replace this string with re.sub? [duplicate]如何用 re.sub 替换这个字符串? [复制]
【发布时间】:2018-07-23 11:48:51
【问题描述】:

假设有两个字符串,foo.example.com/1.2.3/sdk-foo-bar.min.jsfoo.example.com/1.2.3/sdk-foo-bar-dev.min.js

默认情况下,第一个在 HTML 代码中使用,但根据参数,我需要将其替换为第二个(即添加 -dev)。

我已经有一个正则表达式 (foo\.example\.com/1\.2\.3/(sdk-foo-bar).min\.js) 来查找字符串并捕获组 sdk-foo-bar,但是我现在如何用 sdk-foo-bar-dev 替换这个组??

【问题讨论】:

  • 捕获您需要保留的内容:re.sub(r'(foo\.example\.com/1\.2\.3/)sdk-foo-bar(\.min\.js)', r'\1sdk-foo-bar-dev\2', s)
  • 这是same idea的答案。

标签: regex python-3.x


【解决方案1】:
inp = 'foo.example.com/1.2.3/sdk-foo-bar.min.js'

m = re.search('(^.*)(.min.js)', inp)
if m:
    print ('%s-%s%s' % (m.group(1), 'dev', m.group(2)))

【讨论】:

    猜你喜欢
    • 2018-11-12
    • 2014-10-12
    • 1970-01-01
    • 2020-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    相关资源
    最近更新 更多