Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    espressione regolare per tag html

    ho trovato questa reg che mi permette di prendere eventuali tag e attributi:

    Expression: <([^\s>]*)(\s[^<]*)>

    Description: grab all tags attributes... [img]truc[/img] returns : < (1:img) (2: src="truc") > i use it to clean html pages to grab infos... use a RegEx Replace with "<$1>" to keep only tags codes...

    Matches: [[img]truc[/img]], [<body background='...'>], [<p align='left'>] [ More Details]

    Non-Matches: [
    ], [</body>], [

    ]


    ma come bisogna applicarla per prendere i dati trovati??

    vi spiego, io devo controllare all'interno di una stringa se è presente un tag <IMG allora se Sì mi deve restituire l'attributo SRC di quel TAG... se ce ne stanno altri vorrei che me li desse tutti in modo da mettermeli in un array eventualmente.

  2. #2
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    Codice PHP:
    preg_match_all("/<img(\s[^<]*)/i"$tuaStringa$ris);
    foreach(
    $ris as $matching) {
       print 
    "Trovata immagine, set attributi presenti: "$matching[1];

    in poche parole $ris è un array bidimensionale in cui il primo indice si riferisce ad ogni tag img trovato nel testo, il secondo agli elementi selezionati:
    0 => tutto il tag
    1 => tutti gli attribbuti in una sola stringa

    per prendere i singoli attribbuti potresti fare un explode sugli spazi, oppure modificare ancora il pattern di sopra in modo da ritornartelo immediatamente.

  3. #3
    grazie per l'aiuto ,... mi studio il caso e vedo un po.

  4. #4
    ho provato ma non restituisce nulla!

  5. #5
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    Originariamente inviato da powerflash
    ho provato ma non restituisce nulla!
    posta il codice

  6. #6
    vi spiego cosa devo fare.

    in una stringa di codice html ho dei tag IMG .. più di uno, adesso io devo verificare questi tag e prenderne l'attributo SRC.

    Una volta presi gli SRC di ogni tag IMG poi devo sostituirli e aggiungere il tag <A ...><IMG ...></A> ad ognuno .. quyesta fase è abbastanza semplice e la eseguo dopo!..

    il problema è mettere tutti gli attributi SRC dei tag IMG in un array

  7. #7
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    prova questo:
    preg_replace("/<img(\s[^<]*)src=\"(.*)\"[^>]*>/i", "<a href=\"$2\">$0</a>", $testo);

    cmq il codice di prima era corretto...

  8. #8
    uaaoo... questo si che funziona..

    grazie per l'aiuto

  9. #9
    dimenticavo, se volessi mettermi tutti gli SRC trovati all'interno di un array??

  10. #10
    con il

    preg_match_all("/<img(\s[^<]*)src=\"(.*)\"[^>]*>/i",$var,$arr);

    echo $arr[2][N];

    nel 2 di N ho i vari SRC trovati! :gren:

    grazie ancora per l'aiuto

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.