2012-05-31 10 views
39

Mi è venuta in mente questa espressione regolare che trova tutte le parole che iniziano con $ e contengono _ sottolinea:Regex per sostituire i valori che includono parte della corrispondenza in sostituzione in sublime?

\$(\w+)_(\w+)

sto fondamentalmente alla ricerca di variabili, come $var_foo ecc

Come faccio Sostituisco roba usando i gruppi regex?

Ad esempio, come è possibile rimuovere il carattere di sottolineatura e rendere maiuscola la lettera successiva, ad esempio $varFoo?

risposta

44

L'espressione di sostituzione è:

\$\1\u\2 

Vedi l'Regular Expressions chapter(nel TextMate docs) per ulteriori informazioni.

C'è già un pacchetto che fa questo, e molto altro ancora:

+1

testo Sublime 3 non prende regex nel "Sostituisci con" il campo. Se inserisco un'espressione regolare, si limita a eseguire il regex come stringa nell'editor. Come posso usare regex nel campo "Sostituisci" in sublime? Fondamentalmente, voglio cercare tutte le parole (in pratica i valori dei colori esadecimali) cominciando con "#" e aggiungo una stringa prima e dopo quella parola. Usando "\ # \ w +", posso trovare tutte queste parole, ma se eseguo string1 \ # \ w + stringa2, la restituisce così com'è, senza sostituire la regex con la parola effettiva. – maverick

+1

@ dk49: utilizzare come segue: Trova: (# \ w +) Sostituisci: text-before \ 1text-after – Mahesh

Problemi correlati