如何在 Python 中使用字典执行高效的字符串替换?

Patricia Arquette
发布: 2024-10-19 16:03:30
原创
162 人浏览过

How to Perform Efficient String Replacements Using a Dictionary in Python?

如何使用字典进行多个字符串替换

需要根据键值对字符串进行多次替换的场景配对,使用字典可以证明是有效的。这是一个 Python 解决方案:

<code class="python">import re

s = 'Спорт russianA'
d = {
    'Спорт': 'Досуг',
    'russianA': 'englishA',
}

# Construct a regular expression pattern for all dictionary keys
keys = (re.escape(k) for k in d.keys())
pattern = re.compile(r'\b(' + '|'.join(keys) + r')\b')

# Replace keys with corresponding values
result = pattern.sub(lambda x: d[x.group()], s)
# Output: 'Досуг englishA'</code>
登录后复制

这种方法使用正则表达式来定位字符串中的键,并用字典中的值替换它们。要仅匹配整个单词,请在模式中指定单词边界 (b)。

如果不需要匹配整个单词,请使用模式:

<code class="python">pattern = re.compile('|'.join(re.escape(k) for k in d.keys()))</code>
登录后复制

注意: 在这种情况下,将字典键按长度降序排序,以防止当某些键是其他键的子字符串时发生错误替换。

以上是如何在 Python 中使用字典执行高效的字符串替换?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!