Correzione sbagliato pieghevole Marker in VIM
Domanda
ho erroneamente fatto marcatore pieghevole alla mia Vimrc:
{{{8 #CS
something..
}}}8
{{{9 #Math
...
}}}9
... many more!
Ho bisogno di cambiare il formato a "#SOMETHING {{{NUMBER" come:
#CS {{{8
something..
}}}8
#Math {{{9
...
}}}9
... many more!
Cosa c'è di sbagliato nel codice seguente:
:%s$/({{{\d/) /(#[:alpha:]/)$\2 \1$g
[Soluzione]
%s$\({{{\d\) \(#[[:alnum:]]*\)$\2 \1$g
Soluzione
Hai dimenticato di sfuggire le parentesi, e le classi di caratteri POSIX sono valide solo all'interno di una [[:alpha:]]
classe di caratteri:
:%s$/\({{{\d/\) /\(#[[:alpha:]]/\)$\2 \1$g
Si noti, tuttavia, che il vostro esempio il testo non contiene barre -? È questo ciò che il vostro testo di esempio è in realtà come
È possibile che questo regex cambia questo
/{{{8/ /#A/
Per questo
#A/ {{{8/
Altri suggerimenti
:%s/{{{\(\d\) \(.*\)/\2 {{{\1/g
funziona, ma nel tuo regex non capisco perché hai un $ dopo s.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow