Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

ancore

Il cursore (^) e il simbolo del dollaro ($) i caratteri sono trattati come ancoraggi nelle espressioni regolari. Ciò significa che causano la corrispondenza solo se l'espressione regolare viene trovata all'inizio della riga (^) o alla fine della riga ($):


[io@linuxbox~]$ grep -h '^zip' dirlist*.txt

zip zipcloak zipgrep zipinfo zipnote zipsplit

[io@linuxbox~]$ grep -h 'zip$' dirlist*.txt

gunzip gzip funzip gpg-zip preunzip prezip decomprimere zip

[io@linuxbox~]$ grep -h '^zip$' dirlist*.txt

chiusura

[io@linuxbox~]$ grep -h '^zip' dirlist*.txt

zip zipcloak zipgrep zipinfo zipnote zipsplit

[io@linuxbox~]$ grep -h 'zip$' dirlist*.txt

gunzip gzip funzip gpg-zip preunzip prezip decomprimere zip

[io@linuxbox~]$ grep -h '^zip$' dirlist*.txt

chiusura


Immagine

Qui abbiamo cercato nell'elenco dei file la stringa "zip" situata all'inizio della riga, alla fine della riga e su una riga in cui si trova sia all'inizio che alla fine della riga (cioè da sola su la linea). Nota che l'espressione regolare '^$' (un inizio e una fine senza nulla in mezzo) corrisponderà alle righe vuote.


Un aiuto per cruciverba

Anche con la nostra conoscenza limitata delle espressioni regolari a questo punto, possiamo fare qualcosa di utile.

Mia moglie adora i cruciverba e a volte mi chiede aiuto per una domanda particolare. Qualcosa del tipo: "Cos'è una parola di cinque lettere la cui terza lettera è 'j' e l'ultima lettera è 'r' che significa...?" Questo tipo di domanda mi ha fatto pensare.

Sapevi che il tuo sistema Linux contiene un dizionario? Lo fa. Dai un'occhiata in /usr/condividi/dice directory e potresti trovarne uno o più. I file del dizionario che si trovano lì sono solo lunghi elenchi di parole, uno per riga, disposti in ordine alfabetico. Sul mio sistema, il parole il file contiene poco più di 98,500



Immagine

parole. Per trovare possibili risposte alla domanda del cruciverba sopra, potremmo fare questo:

[io@linuxbox~]$ grep -i '^..jr$' /usr/share/dict/words

Maggiore maggiore

Usando questa espressione regolare, possiamo trovare tutte le parole nel nostro file del dizionario che sono lunghe cinque lettere e hanno una “j” nella terza posizione e una “r” nell'ultima posizione.


Il miglior sistema operativo cloud computing su OnWorks: