Come sostituire i simboli con Regex

February 27

Come sostituire i simboli con Regex


Lavoratrici nell'oscurità rendendo gran parte del mondo di Internet una proposta che va, le espressioni regolari sono l'eroe sconosciuto della tecnologia dell'informazione. Trovato in tutto il mondo da script che servono pagine Web di bioinformatica per il vostro programma di elaborazione testi umili, le espressioni regolari aiutano gli amministratori e programmatori domare, la forma e il controllo di grandi quantità di dati con poco sforzo. La sintassi delle espressioni regolari è impegnativo. Mentre sono principalmente manipolatori della lingua, le espressioni regolari sembrano niente come un linguaggio naturale.

istruzione

1 Preparare un file di testo copiando un'opera di dominio pubblico in un file di testo. Salvare il file con il nome "regextest1" con il suffisso ".txt" nella directory di documenti (o una cartella) in una nuova directory con il nome "RegExTests."

2 Avviare una sessione di console se si utilizza Windows; avviare una sessione di terminale, se si utilizza Mac OS X. Tipo "perl -v" alla riga di comando per verificare la presenza di Perl sul vostro sistema e la sua versione.

3 Digitare quanto segue al prompt dei comandi, quindi premere il tasto "Enter":

perl -e "s /./ PERIODO / g;" -pi.save $ (trovare Documenti / RegExTests -type f)

Questo comando aprirà tutti i documenti nelle RegExTests directory, aprirla sostituire ogni occorrenza di un periodo con la parola PERIODO e salvare il documento modificato.

Poiché il periodo è un metacarattere nelle espressioni regolari, per trovare un periodo di "letterale", è necessario utilizzare il simbolo di fuga "." Al fine di trovare questi simboli, $ ()

+ [\ ^ {|, è necessario sfuggire loro con il carattere di escape, \:.? \ $ () \ +. ? \ [\\ ^ {\ |.

4 Sostituire il simbolo del dollaro, "$" con la parola DOLLARO (o qualsiasi parola che si desidera) con il seguente script Perl:

perl -e "s / \ $ / dollaro / g;" -pi.save $ (trovare Documenti / RegExTests -type f)

Si aprirà ogni documento nella cartella, trovare ogni occorrenza del simbolo del dollaro e sostituirlo con la parola dollaro. se si desidera cercare e sostituire in un unico documento unico, si potrebbe riscrivere lo script come:

perl -e "s / \ $ / dollaro / g;" $ -pi.save (Trovare i documenti / RegExTests / regextest1.txt tipo f)

Consigli e avvertenze

  • Molte applicazioni di elaborazione testi e creazione di pagine web hanno capacità di espressioni regolari che consentono di cercare e sostituire i simboli come sopra, ma con lievi variazioni nella sintassi delle espressioni regolari. Controllare il menu di aiuto dell'applicazione per ulteriori informazioni.
  • Pratica con documenti di testo creati con lo scopo di imparare e testare le espressioni regolari. Mai testare le espressioni regolari come utente root. Si potrebbe fare gravi danni al sistema operativo, che richiede la reinstallazione del sistema operativo e la perdita di dati e applicazioni.