首頁 >後端開發 >php教程 >php正则截取字符串

php正则截取字符串

WBOY
WBOY原創
2016-06-23 13:52:201124瀏覽

字符串的格式是这个样子的
请问怎么截取src=“”里面的内容呢,也就是红字部分。求指导啊


回复讨论(解决方案)

$s=<<<txt<embed src="/fofa/upload/2014-08/05/5.mp4" type="video/x-ms-asf-plugin" width="550" height="400" autostart="false" loop="true" />txt;preg_match('/src="(.+?)"/i', $s, $m);echo $m[1];

$s =<<< TXT字符串的格式是<embed src="/fofa/upload/2014-08/05/5.mp4" type="video/x-ms-asf-plugin" width="550" height="400" autostart="false" loop="true" />这个样子的请问怎么截取src="..."里面的内容呢,也就是红字部分。求指导啊TXT;preg_match_all('/src=([\'"]?)(.+?)\1/is', $s, $m);print_r($m);
Array(    [0] => Array        (            [0] => src="/fofa/upload/2014-08/05/5.mp4"            [1] => src="..."        )    [1] => Array        (            [0] => "            [1] => "        )    [2] => Array        (            [0] => /fofa/upload/2014-08/05/5.mp4            [1] => ...        ))

$s=<<<txt<embed src="/fofa/upload/2014-08/05/5.mp4" type="video/x-ms-asf-plugin" width="550" height="400" autostart="false" loop="true" />txt;preg_match('/src="(.+?)"/i', $s, $m);echo $m[1];

成功了十分感谢,还想请教个问题,就是为什么$m数组里面会用两遍匹配的内容,还有就是字符串前的“

$s =<<< TXT字符串的格式是<embed src="/fofa/upload/2014-08/05/5.mp4" type="video/x-ms-asf-plugin" width="550" height="400" autostart="false" loop="true" />这个样子的请问怎么截取src="..."里面的内容呢,也就是红字部分。求指导啊TXT;preg_match_all('/src=([\'"]?)(.+?)\1/is', $s, $m);print_r($m);
Array(    [0] => Array        (            [0] => src="/fofa/upload/2014-08/05/5.mp4"            [1] => src="..."        )    [1] => Array        (            [0] => "            [1] => "        )    [2] => Array        (            [0] => /fofa/upload/2014-08/05/5.mp4            [1] => ...        ))

已成功,十分感谢,问一下最后的数组里为什么会出现三次结果

去看一下preg_match 的用法就明白了。

可以看这里用法: http://php.net/manual/zh/language.types.string.php#language.types.string.syntax.heredoc

去看一下preg_match 的用法就明白了。

可以看这里用法: http://php.net/manual/zh/language.types.string.php#language.types.string.syntax.heredoc

哦,谢谢了
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn