我有一个像这样的输入文件
line 1
line 2
line 3
在我要替换的所有行之前有四个空格。
我希望最终结果是:
A[line 1
A[line 2
A[line 3
(很有趣,所以编辑不希望逐行显示)
我尝试M-x replace-regex ^[]+ -> A\[
,但收到错误invalid regex "Unmatched [ or [^"
我尝试M-x replace-regex ^[]+ -> A[
,但得到同样的错误。
更换[
是个问题。如何解决这个问题?
答案 0 :(得分:4)
尝试
M-x query-replace-regex RET ^ RET A[ RET
^^^
notice the 4 spaces here
在您的示例中,您在字符类中缺少一个空格:^[ ]+
更漂亮可能是:^[[:space:]]+
。
答案 1 :(得分:1)
Rectangles为您提供另一种处理这些问题的方法。 Cua-mode提供了一个更好的系统。要使用它,首先将以下内容添加到.emacs:
(setq cua-enable-cua-keys nil)
(cua-mode)
然后,点在以下*
:
* line 1 line 2 line 3
点击C-enter
,然后使用箭头键(或C-n
和C-f
)将指针移至:
line 1 line 2 *line 3
空白将全部突出显示。输入A[
以插入字符。然后点击C-w
删除空格。
答案 2 :(得分:1)
M-x query-replace-regex RET ^ + RET A[ RET
因为它不需要替换单个字符,所以不需要括号或类