源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

python中快速进行多个字符替换的方法小结

  • 时间:2021-10-11 10:57 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:python中快速进行多个字符替换的方法小结
[b]先给出结论:[/b] [list=1] [*]要替换的字符数量不多时,可以直接链式[code]replace()[/code]方法进行替换,效率非常高; [/*] [*]如果要替换的字符数量较多,则推荐在 for 循环中调用 [code]replace() [/code]进行替换。[/*] [/list] [b]可行的方法:[/b] [b]1. 链式replace()[/b]
string.replace().replace()
     1.x 在[code]for[/code]循环中调用[code]replace() [/code]「在要替换的字符较多时」 [b]2. 使用string.maketrans[/b] [b]3. 先 re.compile 然后 re.sub[/b] ……
def a(text):
 chars = "&#"
 for c in chars:
 text = text.replace(c, "\\" + c)
def b(text):
 for ch in ['&','#']:
 if ch in text:
  text = text.replace(ch,"\\"+ch)
import re
def c(text):
 rx = re.compile('([&#])')
 text = rx.sub(r'\\\1', text)
RX = re.compile('([&#])')
def d(text):
 text = RX.sub(r'\\\1', text)
def mk_esc(esc_chars):
 return lambda s: ''.join(['\\' + c if c in esc_chars else c for c in s])
esc = mk_esc('&#')
def e(text):
 esc(text)
def f(text):
 text = text.replace('&', '\&').replace('#', '\#')
def g(text):
 replacements = {"&": "\&", "#": "\#"}
 text = "".join([replacements.get(c, c) for c in text])
def h(text):
 text = text.replace('&', r'\&')
 text = text.replace('#', r'\#')
def i(text):
 text = text.replace('&', r'\&').replace('#', r'\#')
[b]参考链接:[/b] http://stackoverflow.com/questions/3411771/multiple-character-replace-with-python http://stackoverflow.com/questions/6116978/python-replace-multiple-strings http://stackoverflow.com/questions/8687018/python-string-replace-two-things-at-once http://stackoverflow.com/questions/28775049/most-efficient-way-to-replace-multiple-characters-in-a-string [b]总结[/b] 以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能有所帮在,如果有疑问大家可以留言交流。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部