Convertire un char in maiuscolo usando le espressioni regolari (EditPad Pro)

Ho scritto un’espressione regolare nella speranza che sarò in grado di sostituire ogni partita (che è solo un carattere) in caratteri maiuscoli. Sto usando EditPad Pro (tuttavia sono disposto a utilizzare qualsiasi altro strumento che mi consenta di farlo, a patto che sia libero di provare, dal momento che ho bisogno di farlo solo una volta).

Background: ho un file di testo molto lungo utilizzato da un’applicazione sensibile alle maiuscole e minuscole e alcune parole iniziano con lettere minuscole anziché lettere maiuscole, causando così il blocco dell’applicazione. Ciò richiederebbe molto tempo per farlo a mano, e sarebbe piuttosto complicato fare a meno delle espressioni regolari perché l’occorrenza del carattere (male) minuscolo è molto specifica.

Ho scritto l’espressione regolare di selezione e ora posso usarlo con un backreference ($ 1 funziona bene), ma non posso farlo sostituire con caratteri maiuscoli. Ho pensato che qualcosa come \ u $ 1 avrebbe funzionato, ma non in EditPad Pro.

Se nessuno strumento libero mi permette di fare questo, suppongo che l’alternativa sarebbe semplicemente farlo in C #, ma sono un po ‘di fretta e non vicino a un compilatore, quindi dovrei scaricare l’edizione rapida prima, quindi … Sarebbe preferibile trovare uno strumento che supporti tale funzione!

Grazie!

TextPad ti permetterà di eseguire questa operazione.

esempio:

test this sentence 

Trova cosa: \([^ ]*\) \(.*\) Sostituisci con: \U\1\E \2

\U farà sì che tutti i seguenti caratteri siano superiori

la \E spegnerà \U

il risultato sarà:

 TEST this sentence 

EditPad Pro e PowerGREP hanno una caratteristica unica che ti consente di cambiare il caso del backreference. \U1 inserisce il primo riferimento in maiuscolo, \L1 in minuscolo e \F1 con il primo carattere in maiuscolo e il resto in minuscolo. Infine, \I1 inserisce con la prima lettera di ogni parola in maiuscolo e le altre lettere in minuscolo.

Fonte: Goyvaerts, Jan (2006). Espressioni regolari: il tutorial completo . Lulu.com. p. 35 . ISBN 1411677609. Google Libri. Estratto il 25 giugno 2010.

So che questo thread riguarda EditPad Pro. Ma sono venuto qui per la stessa esigenza di javascript regexp.

Per le persone che hanno bisogno dello stesso suggerimento, per l’espressione regolare di javascript, è ansible utilizzare una funzione come argomento sostitutivo.

Uso la funzione qui sotto per convertire i nomi css con – all’equivalente javascript, ad esempio: “border-top” verrà trasformato in “borderTop”;

 s = s.replace(/\-[az]/g, function(x){return x[1].toUpperCase();}); 

Puoi farlo in jEdit, usando l’opzione “Valore di ritorno di un frammento di BeanShell” nella finestra di dialogo Trova e sostituisci di jEdit. Basta cercare " [az]" e sostituirlo con " _0.toUpperCase()" (senza virgolette)

Puoi anche scrivere in maiuscolo la prima lettera della partita usando \I1 e \I2 ecc. Invece di $1 e $2 .