|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2008
Messaggi: 502
|
espressioni regolari grep
salve a tutti,
ho trovato un esercizio sull'ottimo "introduzione a linux" di guidi-bertacca che non riesco proprio a risolvere... supponendo di avere un file con il seguente contenuto Codice:
prima linea seconda linea terza linea quarta linea quinta linea sesta linea settima linea ottava linea nona linea decima linea undicesima linea dodicesima linea tredicesima linea quattordicesima linea fine grazie. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Non ti posto la soluzione secca (non sarebbe molto pedagogico...), ti elenco gli ingredienti della mia ricetta (spesso è possibile risolvere in vari modi):
Esempio di esecuzione, anche per aver conferma di aver capito bene il quesito: Codice:
gimli@sertan ~ $ cat test.txt prima linea seconda linea terza linea quarta linea quinta linea sesta linea settima linea ottava linea nona linea decima linea undicesima linea dodicesima linea tredicesima linea quattordicesima linea li 123456li 1234567li 12345678li 123456789li fine gimli@sertan ~ $ grep -E "**SUSPENCE**" test.txt prima linea terza linea quarta linea quinta linea sesta linea ottava linea nona linea decima linea li 123456li 1234567li
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: May 2008
Messaggi: 502
|
Ottimo! I tuoi indizi mi hanno condotto per mano alla soluzione!!!
![]() Codice:
grep -E "^.{0,7}li" test.txt Codice:
grep "^.\{0,7\}li" test.txt Come reputi il livello di difficoltà di questo esercizio? E' deprecabile essere stato tre giorni in meditazione senza riuscire a risolverlo? ![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Non è deprecabile, personalmente scordo la sintassi delle espressioni regolari di continuo... devo sempre invocare San Google per cucire insieme gli elementi che mi affiorano dalla memoria. Per non parlare delle comuni rogne con caratteri che necessitano escape di vario tipo, serie piuttosto folli di slash o effetti collaterali inattesi.
Questo esercizio mi sembra un caso che simula una situazione piuttosto realistica utilizzando vari elementi, evidenziando inoltre che egrep è utile. Prova a continuare ad esercitarti e vinci la pigrizia cercando di utilizzare le espressioni quando sembrano un minimo utili (e hai il tempo per cercare una soluzione tranquillamente), dovresti tranquillamente diventare un po' più fluente, magari anche salvare la giornata!
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: May 2008
Messaggi: 502
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:16.