Mi sono affacciato da pochissimo nel mondo delle espressioni regolari per maneggiare delle stringhe, ed ecco subito che mi trovo davanti a un problema.
Ho visto che per separare una stringa esiste il comando
explode(separatore, $stringa)
o anche
split(separatore, $stirnga)
Il mio problema sta in quel separatore.
Ho una stringa, lunga un numero imprecisato di righe, con questo formato
Riga 1 \n
Riga 2 \n
Riga 3 \n
\n
Riga 4 \n
Riga 5 \n
Riga 6 \n
Riga 7 \n
\n
(\n)
Riga 1 \n
Riga 2 \n
.....
In cui (\n) è una riga vuota che può essere presente o meno, secondo un criterio che non posso sapere a priori.
Dovrei separare i vari blocchi di 7 righe per poi operare su ogni singolo blocco in seguito.
Purtroppo mentre le righe dalla 2 alla 7 sono facilmente identificabili poichè ripetitive nei vari blocchi, la riga uno contiene in ogni blocco parole diverse (Nome e Cognome) e quindi non trovo un metodo per identificarla.
Ho trovato due soluzioni teoriche, che però non so se e come possano essere applicate al codice php:
- Identifico la riga 2 andando a cercare la prima parola che la compone (uguale per ogni blocco) e poi vado a fare un explode alla riga precedente (si può fare?Non credo)
- Conto le righe non vuote, e ogni 7 righe non vuote faccio un explode (mi sembra più fattibile, ma non so ugualmente come)
-Altro a cui non ho pensato
EDIT. corretto un po' di errori di battitura