0

我错误地将标记折叠到我的.vimrc:

{{{8 #CS
something..
}}}8  
{{{9 #Math
...
}}}9  
... many more!

我需要将格式切换为“#SOMETHING {{{NUMBER”,例如:

#CS {{{8 
something..
}}}8  
#Math {{{9 
...
}}}9  
... many more!

以下代码有什么问题:

:%s$/({{{\d/) /(#[:alpha:]/)$\2 \1$g

[解决方案]

%s$\({{{\d\) \(#[[:alnum:]]*\)$\2 \1$g
4

2 回答 2

1

:%s/{{{\(\d\) \(.*\)/\2 {{{\1/g

它有效,但是在您的正则表达式中,我不明白为什么您在 s 之后得到 $ 。

于 2009-04-28T21:51:11.593 回答
1

您忘记转义括号,并且 POSIX 字符类仅在字符类中有效[[:alpha:]]

:%s$/\({{{\d/\) /\(#[[:alpha:]]/\)$\2 \1$g

但是请注意,您的示例文本不包含任何斜线 - 这是您的示例文本的实际样子吗?

上面的正则表达式改变了这个

/{{{8/ /#A/

对此

#A/ {{{8/
于 2009-04-28T22:49:38.583 回答