Regex 如何用re.sub替换此字符串?

Regex 如何用re.sub替换此字符串?,regex,python-3.x,Regex,Python 3.x,假设有两个字符串,foo.example.com/1.2.3/sdk foo-bar.min.js和foo.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 b

假设有两个字符串,
foo.example.com/1.2.3/sdk foo-bar.min.js
foo.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)
下面是答案。
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)))