4
我正在開發一個Web應用程序。動態轉義字符串中的%符號和括號{}
我需要逃避%
和{ }
,如果存在,使用無論是.format()
或%s
我試過urllib quote_plus
,re.escape()
但沒有工作進一步字符串替換。
我需要轉義的字符串不是靜態的。
我該如何解決這個問題?
謝謝。
我正在開發一個Web應用程序。動態轉義字符串中的%符號和括號{}
我需要逃避%
和{ }
,如果存在,使用無論是.format()
或%s
我試過urllib quote_plus
,re.escape()
但沒有工作進一步字符串替換。
我需要轉義的字符串不是靜態的。
我該如何解決這個問題?
謝謝。
對於使用與%
:
s = s.replace('%', '%%')
對於使用與format
:
s = s.replace('{', '{{').replace('}', '}}')
爲了逃避%
,{
和}
。你可以用re.sub
方法做到這一點。爲了逃避string.format
:
re.sub(r'({|})', '\g<1>\g<1>', original)
逃避string % args
:
re.sub(r'(%)', '\g<1>\g<1>', original)
或者使用字符串替換方法,請參閱eumiro的答案。 – 2013-02-21 10:09:37