簡體   English   中英

PHP preg_match(從javascript獲取網址)

[英]PHP preg_match ( get url from javascript )

要獲取圖像的URL,我正在使用此preg_match:

preg_match( "/lstImages.push('(.+?)');/", $html, $matches );
foreach ($matches as $mt){
echo $mt;
}

在$ html ther中,是這樣的javascript:

<script type="text/javascript">
                var lstImages = new Array();

                    lstImages.push("http://2.bp.blogspot.com/-A_8FelFBtA0/U8CbI8mDvNI/AAAAAAABHRk/bz4ysT8qeBk/046.png?imgmax=3000");

                    lstImages.push("http://2.bp.blogspot.com/-wkv19o5dCAA/U8CaDZ2VEtI/AAAAAAABHL4/mAGcV8TJbQc/001.png?imgmax=3000");

...

</script>

我希望能夠獲得網址

http://2.bp.blogspot.com/-A_8FelFBtA0/U8CbI8mDvNI/AAAAAAABHRk/bz4ysT8qeBk/046.png?imgmax=3000

但是那沒有結果嗎?

謝謝

'/lstImages\.push\("([^"]*)"\);/'

試試這個。這樣應該可以得到所需的圖像。

如果必須使用正則表達式來執行此操作,則應改用preg_match_all()

對於您要匹配的內容,正則表達式語法不正確。 您的模式引號用定界符引起,我建議您將其替換為單引號。 表達式內的單引號應改為雙引號。 另外,您還需要轉義元字符以匹配文字字符。

preg_match_all('/lstImages\.push\("(.+?)"\);/', $html, $matches);
echo implode("\n", $matches[1]);

產出

http://2.bp.blogspot.com/-A_8FelFBtA0/U8CbI8mDvNI/AAAAAAABHRk/bz4ysT8qeBk/046.png?imgmax=3000
http://2.bp.blogspot.com/-wkv19o5dCAA/U8CaDZ2VEtI/AAAAAAABHL4/mAGcV8TJbQc/001.png?imgmax=3000

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM