Emacs aritmetica semplice nella query di sostituzione


8

È possibile effettuare le seguenti operazioni in emacs:

La query sostituisce tutti i numeri in un'area con il numero + n, ad esempio se si dispone di:

12 and 7 are nice numbers

sia n 3, quindi dovrebbe trasformarsi in

15 and 10 are nice numbers

Risposte:


9

Sì, è possibile, \&può essere utilizzato nell'espressione di sostituzione per rappresentare l'intera corrispondenza, allo stesso modo \#&può essere utilizzato per rappresentare l'intera corrispondenza come numero.

Più concretamente:

Mx query-replace-regexp \b[0-9]+\bINVIO\,(+ 3 \#&)

E una citazione dalla documentazione

È possibile utilizzare le espressioni Lisp per calcolare parti della stringa di sostituzione. Per fare ciò, scrivi '\,' seguito dall'espressione nella stringa di sostituzione. Ogni sostituzione calcola il valore dell'espressione e lo converte in testo senza virgolette.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.