Om det bara är href på ett a-element du är intresserad av:
/<a.*href=['"]?([^"']+)['"]?.*<\/a>/ig
samma sak med img:
/<img.*src=['"]?([^"']+)['"]?.*>/ig
1 svar · 460 visningar · startad av Guldstrand
Jag försöker lära mig lite om regular expresions, och testar nu med att plocka ut länkar och bilder från olika externa sidor.
Regexp (länkar):
/<a([^>]+)\>(.*?)\<\/a\>/i
Regexp (bilder):
/<img([^>]+)\/>/i
Jag testade lite mot detta forum, och fick då följande resultat.
Bilder:
src="http://www.webforum.nu/images/wfstandard/logo_webforum.gif" border="0" alt="webForum"
Jag vill INTE ha med src=" eller border="0" alt="webForum" som i exemplet ovan.
(Vill endast plocka ut http://www.webforum.nu/images/wfstandard/logo_webforum.gif.)
Länkar:
[0] => name="top"
[1] => href="http://www.webforum.nu/?"
[2] => href="http://www.binero.se" target="_blank"
[3] => href="http://www.webforum.nu/?" accesskey="1"
[4] => href="register.php?" rel="nofollow"
[5] => rel="help" href="faq.php?" accesskey="5"
[6] => href="http://www.webforum.nu/showthread.php?t=173837"
[7] => href="search.php?" accesskey="4"
[8] => href="search.php?do=getdaily" accesskey="2"
[9] => href="forumdisplay.php?do=markread" rel="nofollow"
[10] => href="http://www.webforum.nu/search.php?"
[11] => href="http://www.webforum.nu/search.php?"
[12] => href="search.php?do=getdaily"
[13] => href="forumdisplay.php?do=markread"
[14] => href="faq.php?faq=about_wf#faq_faq_rules" rel="nofollow"
[15] => href="showgroups.php?"
I texten ovan, så plockas också href=", rel="nofollow" och annat ut.
(Vill endast plocka ut t.e.x. http://www.webforum.nu/search.php?.)
Går det att göra så att man slipper behöva tänka på om vissa "taggar/tecken" finns eller inte?
Om det bara är href på ett a-element du är intresserad av:
/<a.*href=['"]?([^"']+)['"]?.*<\/a>/ig
samma sak med img:
/<img.*src=['"]?([^"']+)['"]?.*>/ig