Может быть, это только я, но мне не нравится использовать регулярные выражения для поиска вещей в кусочках HTML, особенно когда HTML непредсказуем (возможно, исходит от пользователя или других веб-страниц).
Как насчет этого:
$doc =
<<<DOC
<script type="text/javascript" src="http://localhost/assets/javascript/system.js" charset="UTF-8"></script>
<script type='text/javascript' src='http://localhost/index.php?uid=93db46d877df1af2a360fa2b04aabb3c' charset='UTF-8'></script>
DOC;
$dom = new DomDocument;
$dom->loadHTML( $doc );
$elems = $dom->getElementsByTagName('*');
foreach ( $elems as $elm ) {
if ( $elm->hasAttribute('src') )
$srcs[] = $elm->getAttribute('src');
}
print_r( $srcs );
Я не знаю, какова разница в скорости между этим и регулярным выражением, но мне требуется гораздо меньше времени, чтобы прочитать его и понять, что я пытаюсь сделать.