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

    [esperti] prendere il contenuto di attributi di tag

    ovviamente si dovrebbero usare le espressioni regalari..

    come?

    esempio:

    $html='<body>yyyyyy1</body>';


    echo func($html);
    // print: array(xxx,xxx1)

    eventualmetne anceh l'anchor text

  2. #2
    vabene risolto, grazie lo stesso

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    non te la cavi con un "ho risolto grazie", dovresti spiegare come hai fatto!

  4. #4
    certamente non cambio neanche i nomi alla variabili:
    codice:
    $pattern_base='|<base[^>]href="([^"]+)"[^>]*>|i';
    if (preg_match($pattern_base,$html,$tagbase))
     $urlbase=$tagbase[1];
    				
    $pattern_a='|<a[^>]+href="([^"]+)"[^>]*>([^<]+)</a>|i';
    preg_match_all($pattern_a,$html,$taga,PREG_SET_ORDER);
    l'array $taga contiene tutte le info

  5. #5
    però c'è un problema se nell'anchor c'è un'immagine il link non viene preso. perchè l'anchor nel pattern è impostato che può contenere tutto tranne < infatti c'è ([^<]).

    come posso scrivere per escludere tutto tranne la sequenza </a> ?

    cosi non funziona: ([^</a>])

  6. #6
    ho provato anceh cosi ma niente [^(</a>)]

    come si fa????

  7. #7

  8. #8
    sto avendo problemi per le pagine html che non seguono gli standard


    in pratica posso trovare sia link cosi che che ]+href="([^"]+)"[^>]*>(.*?)|i';


  9. #9

  10. #10
    forse sono riuscito a scrivere il pattern per l'href senza apici ne virgolette:

    $pattern_a='|<a[^>]+href=([^"\'][^ ]+)[^>]*>(.*?)</a>|i';

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.