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

    [Regex] Estrarre src da iframe

    ciao!

    avrei la necessità di estrapolare l'attributo src da un iframe.
    la stringa che mi arriva è questa:
    codice:
     <div class=\"addtoany_share_save_container addtoany_content_top\"><div class=\"a2a_kit a2a_kit_size_32 addtoany_list a2a_target\" id=\"wpa2a_1\"><a class=\"a2a_button_facebook\" href=\"http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fwww.hardstyleitalia.com%2Fblog%2Fteflon-euro-whore-sam-punk-vs-ricardo-dj-remix%2F&amp;linkname=Euro%20Whore%20%E2%80%93%20Teflon%20%28Sam%20Punk%20Vs%20Ricardo%20DJ%20Remix%29\" title=\"Facebook\" rel=\"nofollow\" target=\"_blank\"></a>\n<script type=\"text/javascript\"><!--\nif(wpa2a)wpa2a.script_load();\n//--></script>\n</div></div><p>Una delle mie preferite.<br />\nInoltre, tra le varie che ci sono, questa versione / remix è quella che preferisco.<br />\nSoprattutto per il ritmo incessante e veloce!<br />\nDa ascoltare e da “shuffelare” (tanto per usare termini inesistenti &#x1f600;).</p>\n<p>Data rilascio: Novembre 2009<br />\nBPM: 150<br />\nLabel: Hard Hammer<br />\nDurata: 6:08</p>\n<iframe  id=\"_ytid_59553\" width=\"783\" height=\"587\" src=\"https://www.youtube-nocookie.com/embed/XPB7U293Py4?enablejsapi=1&autoplay=0&cc_load_policy=0&iv_load_policy=1&loop=0&modestbranding=1&rel=1&showinfo=1&playsinline=0&autohide=2&theme=dark&color=red&wmode=opaque&vq=&controls=2&\" frameborder=\"0\" class=\"__youtube_prefs__\" allowfullscreen ></iframe>\n
    per ora ho provato a farlo con qt, ma in verità ho la stessa identica necessità in javascript.
    non riesco a capire se sto sbagliando la regex.
    ho provato così:
    codice:
            QRegularExpression regex("#<iframe(.*?)></iframe>#is");
            if (regex.match(content.toString()).hasMatch())
            {
                qDebug() << "OK";
            }
            else
            {
                qDebug() << "KO";
            }
    ovviamente mi esce sempre un bel KO.

    gli esempi in js non li ho a portata di mano, ma ho usato la stessa regex.
    dove sto sbagliando??

  2. #2
    ho ripulito la stringa di tutti gli \, e poi ho usato questa espressione in php:
    codice:
    "/src=\"([^\"]+)\"/"
    ed ha funzionato.
    allora ho pensato di usare la stessa, ma non riesco in quanto non mi rimuove gli \:
    codice:
            QString str = content.toString().replace(QString("\\"), QString(""));
            qDebug() << str;
    
            if (regex.match(str).hasMatch())
            {
                qDebug() << "OK";
            }
            else
            {
                qDebug() << "KO";
            }
    ma se provo a levare qualsiasi altra cosa (tipo div) riesco.
    dove sbaglio??
    Ultima modifica di fermat; 31-05-2016 a 16:11

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 © 2024 vBulletin Solutions, Inc. All rights reserved.