簡體   English   中英

更干凈的使用re.sub的方式

[英]Cleaner way to use re.sub

我知道必須有更好的方法來完成以下任務。 這是我的功能:

def authenticated_url(url):
    return re.sub(r"(^https://)", "https://" + access_token() + "@", url)

access_token()以字符串形式返回令牌,例如"1248jkdfhjksabcd382"

所需的輸出如下:

>>> url = "https://github.com/jfach/autostager"
>>> auth_url = authenticated_url(url)
>>> url
'https://1248jkdfhjksabcd382@github.com/jfach/autostager'

那是我當前獲得的輸出,因此可以正常工作,但是我不禁以為我在錯誤/低效地使用re模塊。

如果您的模式是固定的,則可以執行以下操作:

url[:8] + access_token() + '@' + url[8:]

如果不確定協議,可以使用replace

url.replace('github', access_token() + '@github')

關於什么:

>>> url = "https://{access_token}@github.com/jfach/autostager"
>>> url.format(access_token=access_token())
'https://1248jkdfhjksabcd382@github.com/jfach/autostager'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM