Come posso usare le espressioni regolari nella finestra di dialogo Trova di TextMate per cercare e sostituire?


1

Voglio sostituire tutto

\caption(.1..)
\caption(.2.)
\caption(.3..)
\caption(.4..)

di

\caption{}

Cosa devo mettere nella casella di ricerca?


L'output dovrebbe essere quattro di "\ caption {}" o solo uno? I numeri (1, 2, 3, 4) devono essere estratti e inseriti nell'output?
Peter Mortensen,

TextMate utilizza la libreria di espressioni regolari di Oniguruma . La sezione 20.3 del manuale contiene informazioni sul sapore delle espressioni regolari utilizzate da TextMate e apparentemente ci sono alcune opzioni nell'interfaccia utente di TextMate per influenzare alcuni comportamenti della corrispondenza delle espressioni regolari (stile Ruby, Perl, Java e Oniguruma).
Peter Mortensen,

Risposte:


6

Vuoi sostituire

\\caption\(.*\)

con

\caption{}

Così semplice.

Devi avere la barra rovesciata \e le parentesi ()sfuggite perché hanno un significato speciale nelle espressioni regolari. La .*parte corrisponde a qualsiasi personaggio, più volte. Ciò corrisponderebbe alle ..2.sottostringhe.


Se vuoi davvero scambiare le parentesi con parentesi graffe, puoi aggiungere un gruppo di acquisizione aggiungendo ()attorno alla stringa che desideri abbinare, e poi riutilizzandolo nella tua sostituzione:

\\caption\((.*)\)

con

\caption{$1}

Il contenuto della tua prima "didascalia" viene acquisito nel primo registro, al quale accediamo $1nuovamente.

Per ulteriori informazioni, leggi il manuale sulle espressioni regolari di TextMate : Manuale di TextMate »Espressioni regolari

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.