Sto cercando di capire come dt
o df
l'ultima occorrenza di un carattere in una stringa.Vim - Elimina fino all'ultima occorrenza di carattere nella riga
Per esempio, diciamo che ho la seguente linea:
foo not.relevant.text.bar
Se io ho f df.
expectedly ottengo foo relevant.text.bar
ma vorrei ottenere foo bar
. L'utilizzo di f 3df.
non è un'opzione in quanto non so quanti di quei caratteri saranno presenti nella stringa. Inoltre, potrei voler ottenere foo .bar
(f 3dt.
), o se la linea termina con un punto, potrei voler ottenere foo .
. Voglio trovare sempre l'ultimo indipendentemente da quanti ce ne siano.
È possibile senza regex? Suppongo che potrei usare una regex ma speravo ci fosse un semplice comando vim che mi manca. Mi trovo a provare a fare qualcosa di simile spesso.
si desidera sempre eliminare dall'accensione della linea? in tal caso, solo alla fine della riga, una ricerca all'indietro '$ F.d0' –
Se cerco all'indietro, dovrei trovare la prima occorrenza del carattere nella stringa poiché voglio ancora tutto prima del primo spazio. – Rob