如何在 Atom 中使用正则表达式在文本字符串中插入符号(Mac OS)
Posted
技术标签:
【中文标题】如何在 Atom 中使用正则表达式在文本字符串中插入符号(Mac OS)【英文标题】:how to insert symbols in a text string using regex in Atom (Mac OS) 【发布时间】:2022-01-15 21:29:54 【问题描述】:我需要在每 2 个字符之前在十六进制字符串中插入一个前缀。 我的第一个想法是使用像
这样的环视(?=[0-9a-f]2)但显然它不会起作用,因为它会找到后面有两个符号的每个位置,而不是每个其他位置。 该行是:
d0bfd0bed181d182d183d0bfd0b8d0bbd0be我可以使用 (?=d[01]) 和 (?另一个问题是,看起来,Atom 编辑器无法在工作环视表达式找到的负空间中插入任何内容。替换适用于 ^ 或 $ 等位置正则表达式,但不适用于lookarond/lookbehind 表达式。
如果不能在 Atom 中完成,请推荐一个适用于 Mac OS 的优秀代码和文本编辑器,它可以理解 perl 风格的正则表达式进行编辑。
【问题讨论】:
您是否尝试过类似([0-9a-f]2)
并替换为0$1
(在两个十六进制字符前添加0
)? (看起来像there is no support for $0
)。
【参考方案1】:
你可以使用
([0-9a-f]2)
并替换为<your_prefix>$1
为匹配的字符串添加前缀。
不幸的是,there is no support for $0
backreference 在 Atom 中,因此您必须在整个模式周围使用外部捕获组。
【讨论】:
以上是关于如何在 Atom 中使用正则表达式在文本字符串中插入符号(Mac OS)的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Python 结合正则表达式和字符串/文件操作在文本文件中搜索模式并存储模式的实例?