Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [REGEX] Mi funziona in locale, ma non on-line

    Ciao a tutti, ho un problema con una espressione regolare, con le quali non vado molto d'accordo purtroppo.

    Devo elaborare una stringa di questo tipo

    <li class="cat-item cat-item-1 current-cat">Il Mio Articolo


    Questa è la mia regex:
    Codice PHP:
    preg_match_all('@<li class="(?<c>.*?)">[url="(?<a>.*?)"](?<t>.*?)[/url]/\n@'$main_menu$cats); 
    $main_menu ovviamente contiene la stringa.

    Funziona in locale, ma on line mi segnala questo errore:
    PHP Warning: preg_match_all() [function.preg-match-all]: Compilation failed: unrecognized character after (?&lt; at offset 14

    Mi potreste aiutare, per favore?
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

  2. #2
    Scusate se riesumo il topic, ma sono sicuro che ci sia qualcuno che possa aiutarmi, magari al mattino mi gira meglio. :-)

    Grazie
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

  3. #3
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

  4. #4
    Prova a riscrivere la regexp senza usare i named subpattern (peraltro quella regexp secondo me non matcha la stringa in questione, visto che il tag <a> ha due attributi).

  5. #5
    Grazie per la risposta k.b

    Scusa sono molto indietro in materia di regex, mi potresti esemplificare quello che hai scritto per cortesia?

    Inoltre aggiungo che in locale la regex matcha perfettamente la stringa che le sottopongo. E' online che ritorna l'errore:

    PHP Warning: preg_match_all() [function.preg-match-all]: Compilation failed: unrecognized character after (?&lt; at offset 14
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

  6. #6
    Prova cosi':

    Codice PHP:
    preg_match_all('#<li class="(.*?)">[url="(.*?)"](.*?)[/url]\\s*#s'$var$cats); 

  7. #7
    @k.b non so davvero come poterti ringraziare.

    Finalmente, grazie al tuo spunto provvidenziale, funziona.

    A buon rendere.
    Olio Extravergine d'Oliva Magino
    Prodotti tipici: in vendita olio, pesto ligure e altri prodotti alimentari tradizionali.

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.