Visualizzazione dei risultati da 1 a 7 su 7

Discussione: regular expression

  1. #1

    regular expression

    salve,
    premetto che di php ci capisco nulla comunque...
    Ho una pagina dalla quale vorrei ricavare solo i dati contenuti tra[*] e
    tipo:
    Codice PHP:
    <LI>al contadino non far sapere come è buno il cacio con le pere

    <LI>sotto la panca la capra campa 
    In pratica vorrei ricavare tutte le voci della pagina che rispecchi quanto detto sopra
    Grazie
    Marco
    Carpe diem
    Preferisco tentare che rinunziare

  2. #2
    Anche se è un'operazione molto scomoda, potresti usare substr(stringa, intero1 , intero2), ad esempio:
    substr('Ciao Pippo', 2, 1);
    avrai il carattere 'a', questa la potresti utilizzare in un ciclo for che ti scorre tutta la stringa.
    Esempio:

    - Scorri tutta la stringa un carattere per volta fino a trovare '<';
    - Una volta trovato controlla i 3 caratteri successivi se sono uguali a 'li>' se è verificata la condizione incomincia a "catturare" i caratteri successivi in una variabile, fino a ritrovare il carattere '<'
    - controllare se i successivi 3 caratteri sono uguali a 'br>' se è verificata la condizione hai terminato di catturare la stringa.
    Realizzazione Software, Siti Web ed E-commerce. Consulenza Software ed esperti open source ...
    Scopri i nostri servizi...

  3. #3
    grazie per la risposta.
    Ho trovato quera regexp
    Codice PHP:
    <li\b[^>]*>(.*?) 
    che testata su questo sito funziona perfettamente ma creando il mio file di test mi da errore
    Codice PHP:
    Warningpreg_match_all() [function.preg-match-all]: Unknown modifier ']' in /web/htdocs/www.xxx.it/home/prova.php on line 6 
    ovviamente la riga 6 è la regexp
    Ps uso quest regexp su delle informazione reperite tramite
    Codice PHP:
    $input = @file_get_contents($url) or die('Could not access file: $url'); 
    Grazie
    Marco
    Carpe diem
    Preferisco tentare che rinunziare

  4. #4
    up
    Carpe diem
    Preferisco tentare che rinunziare

  5. #5
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    se il problema è sulla funzione preg_match_all perchè non posti quella?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  6. #6
    Originariamente inviato da marco1970
    <li\b[^>]*>(.*?)
    Inoltre questa regex ha seri problemi di forma. Per fare quello che hai chiesto, è sufficiente

    /<LI>(.*)
    /iU

  7. #7
    per fcaldera:
    in realtà non ho postato quella riga in quanto nei parametrigli passavo delle variabili ed il problema era prorio nella regexp.

    per ntd:
    GRAZIE funziona perfettamente era la regexp errata anche se su quei siti postati funzionava.

    Grazie a tutti coloro che ci aiutano
    Marco
    Carpe diem
    Preferisco tentare che rinunziare

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.