Question

Je tort fait plier à mon marqueur Vimrc:

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

Je dois changer le format "#SOMETHING {{{NUMBER" comme:

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

Qu'est-ce qui ne va pas dans le code suivant:

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

[Solution]

%s$\({{{\d\) \(#[[:alnum:]]*\)$\2 \1$g
Était-ce utile?

La solution

Vous avez oublié d'échapper aux parenthèses, et les classes de caractères POSIX ne sont valables que dans une classe de caractères [[:alpha:]]:

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

Notez, cependant, que votre texte exemple ne contient pas de barres obliques - est-ce que votre échantillon de texte est réellement comme

Le regex ci-dessus change cette

/{{{8/ /#A/

Pour cela

#A/ {{{8/

Autres conseils

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

il fonctionne, mais dans votre regex Je ne comprends pas pourquoi vous avez un $ après s.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top