【发布时间】:2015-04-03 04:50:40
【问题描述】:
我想在 Vim 中对一系列行进行全局替换:
:s/pattern/replacement/g
“模式”是一组中的一个字符,例如[BEINS] 并且“替换”是单个字符。然而,问题是单个字符作为 ASCII/Unicode 字符的 2 位十六进制表示形式提供给我。显然,我可以查看一个十六进制 ASCII 图表,例如 5F 是下划线字符,然后我可以在正则表达式的替换部分键入 _。
有没有办法在正则表达式的右侧键入十六进制?
我尝试过但不起作用的事情包括:
:%s/[BEINS]/\x5F/g
:%s/[BEINS]/\\x5F/g
在我的 Linux 工作站上,我可以输入 Ctrl-Shift-U,然后输入十六进制代码,然后输入 Enter 但我想知道是否有特定于 Vim 的方法将十六进制放入正则表达式的替换部分。
【问题讨论】: