假设我有一个由用户以下列形式给出的字符串:
"single, single, double word, single word, also single"
如何解析此字符串以获取逗号分隔的单词字符串,其中每个单独的空格都被视为分隔符并替换为','
,每个单词都替换为%20
?结果将是:
"single,single,double%20word,single,word,also,single"
?我可以一步到位吗?
答案 0 :(得分:1)
这就是你所要求的:
def repl(m):
if m.group(0) == ' ':
return '%20'
else:
return ','
re.sub(',? +', repl, "single, single, double word, single word, also single")
但是,如果您的目标是最终使用正确的URL转义,我建议您实际使用专门设计的库函数。例如:urllib.quote
答案 1 :(得分:0)
你可能只需一步就可以完成,但两个人做得更安全
首先使用正则表达式将\s\s+
替换为,
然后将\s
替换为%20