[英]python string change character in string before certain character
我有这个 url 并想将 px 值从 160 更改为 500。在不知道字符索引的情况下如何操作? 我试过用替换 function
https://someurl.com//img_cache/381a58s7943437_037_160px.jpg?old
我想要的是:
https://someurl.com//img_cache/381a58s7943437_037_500px.jpg?old
import re
s = 'https://someurl.com//img_cache/381a58s7943437_037_160px.jpg?old'
s = re.sub(r'_\d+px\.', '_500px.', s)
>>> s
'https://someurl.com//img_cache/381a58s7943437_037_500px.jpg?old'
此处的正则表达式\d+(?=px)
查找px
之前的数字,然后将它们替换为您在参数new_res
中输入的任何内容。
import re
string = "https://someurl.com//img_cache/381a58s7943437_037_160px.jpg?old"
new_res = "500"
out = re.sub("\d+(?=px)", new_res, string)
print(out)
Output:
https://someurl.com//img_cache/381a58s7943437_037_500px.jpg?old
您可以使用正则表达式模式来查找一个或多个数字,并带有肯定的前瞻,断言紧随其后的是 substring "px.jpg"
:
import re
url = "https://someurl.com//img_cache/381a58s7943437_037_160px.jpg?old"
pattern = "\\d+(?=px.jpg)"
print(re.sub(pattern, "540", url))
Output:
https://someurl.com//img_cache/381a58s7943437_037_540px.jpg?old
>>>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.