ci provo, allora
Chiaramente l'"indice che vuoi" dipende da come si raggruppano i matching. Comunque il punto č che quelCodice PHP:$phrase = (gruppoA)testo (gruppo lala(gruppoB)altro testo(gruppoA)trallalalalala(gruppoB)
$reg_expr = "help me";
preg_match_all($reg_expr, $phrase, $lines, PREG_SET_ORDER);
/*
* Io cerco la $reg_expr per ottenere
* $lines[0][indice che preferisci] = "testo (gruppo lala";
* $lines[1][stesso indice che preferisci] = "trallalalalala";
*/
"(gruppo" mi da proprio fastidio, perchč ho due strutture (dove per struttura intendo (gruppoA) testo (gruppoB) nello stesso testo, quindi
non puo' andare perchč becco in $line[0][1]:Codice PHP:$reg_exp = "/\(gruppoA\)(.*)\(gruppoB\)/";
testo (gruppo lala(gruppoB)altro testo(gruppoA)trallalalalala
Allora dico, mettiamo cosi'
perfetto, se non ci sono parentesi tonde all'interno della struttura, altrimenti come nell'esempio di frase che ho messo non trova nulla.Codice PHP:$reg_exp = "/\(gruppo>\)([^\(]*)\(gruppoB\)/";
Quindi io intendo che voglio considerare un gruppo (quello contenuto tra (gruppoA) e (gruppoB)) che non contenga al suo interno il gruppo di caratteri (gruppoB).
Questo senza iniziare a scomporre in array, perchč cosė vedo la soluzione, ma vorrei sapere se si puo' fare con una sola reg exp.
Spero si capisca qualcosa, grazie k.b.

Rispondi quotando