python - 单词边界 \b 不适用于 Python 正则表达式中带点的字符串
问题描述
我需要用 替换一个特定的单词abc
,abc_test
但是用\b
,.
被认为是单词边界,所以我得到了意想不到的结果。有人可以帮我弄清楚如何跳过替换.
with/b
吗?
这是我的脚本:
import re
f = open("4.txt", "r").read()
op = re.sub(r'\babc\b', 'abc_test', f)
print(op)
这是我的输入文件 4.txt:
abc
abc xyz
abc
abc.asd
输出:
abc_test
abc_test xyz
abc_ztx
abc_test.asd # This gets replaced which is not as expected
预期输出:
abc_test
abc_test xyz
abc_ztx
abc.asd # This shouldn't be replaced
如何限制正则表达式跳过abc.asd
这里?
解决方案
推荐阅读
- c++ - 全局地图编译到多个共享对象的双重免费问题
- sorting - 列出、排序音频源
- flutter - Flutter 升级 2.0 发布问题
- intersystems-ensemble - 如何在 %SOAP.Webclient 中更改 Soap ns2 消息的命名空间
- python - 为什么 type() 不总是返回 Python 中的真实类?
- java - 这可能是由于在 HTTPS 情况下未使用 HTTP.SYS 正确配置服务器证书。C#
- stream - Apache Flink 度量来计算迟到的元素
- azure - 集合内应用程序的图形 API 列表
- discord.js - Discord.js TypeError:member.roles.filter 不是函数
- css - 即使孩子大于屏幕,CSS 也只能垂直居中滚动