我有很多这种模式的字符串[INTEGER]-[URL-SLUG]
。例子:
234234-url-slug-1
2-urlslug2
301-url-slug4
我需要更换' - '在带有' /'的整数之后但是留下另一个' - '完整。所以最后的字符串是:
234234/url-slug-1
2/urlslug2
301/url-slug4
答案 0 :(得分:1)
这应该可以使用re.sub
:
> import re
> s = '234234-url-slug-1'
> re.sub(r'(\d)\-', r'\1/', s)
'234234/url-slug-1'
替换字符串中的 \1
指的是匹配模式中的第一个捕获组:'(\d)'
。
答案 1 :(得分:1)
re.sub函数具有可选参数 count ,这是要替换的模式最大出现次数:
s = '234234-url-slug-1'
result = re.sub(r'^(\d+)-', r'\1/', s, 1)
print(result)
输出:
234234/url-slug-1