Ich versuche eine Zeichenfolge umzukehren, damit das 'abc defg hij'
wird 'jih gfed cba'
. Die Lösung, die ich gefunden habe, ist
join(reverse(split(l:text, '.\zs')), '')
Gibt es eine elegantere Lösung oder sollte ich mich an das halten, was ich mir ausgedacht habe?
vimscript
string-manipulation
René Nyffenegger
quelle
quelle
split()
ohne die{keepempty}
Option ein einzelnes leeres Element am Anfang und ein einzelnes leeres Element am Ende entfernt werden. Derzeit werden alle leeren Elemente entfernt, einschließlich der Elemente in der Mitte der Liste (was nützlicher ist als das dokumentierte Verhalten, wenn Sie mich fragen, aber wahrscheinlich nicht). Ich denke, das wurde kürzlich am diskutiertvim_dev
.Antworten:
Ihre Lösung ist sehr elegant! Eine Alternative, wenn Sie sich in einer Unix-basierten Umgebung befinden:
quelle
Aus Wikia
Weitere Informationen finden Sie unter:
:h revins
quelle
Wenn Sie ein Unix-ähnliches System verwenden, geben Sie in vim den Befehl ex-command ein
:%! rev
quelle