0

リンクを差し引こうとしています <a class="link" href="http://www.x.ro/index.php?page=profile&amp;aid=560030" title="Profilul lui

私は試した

<?php
$output2='<a class="link" href="http://www.x.ro/index.php?page=profile&amp;aid=560030" title="Profilul lui';
preg_match_all('#<a\sclass="link"\shref="(.*?)"\stitle="Profilul#i', $output2, $match);
print_r ($match);
?>

何も表示されていません... 配列 ( [0] => 配列 ( [0] =>

解決済み ... print_rt show anything, i donが理由を知らなかったようです。var_dump は魅力的に機能しました

4

1 に答える 1

0

print_r二重引用符のバランスが取れておらず、正規表現の開き角括弧が原因で、それが機能していないことは確かです。入力文字列を少し変更しました:

<a class="link" href="http://www.x.ro/index.php?page=profile&amp;aid=560030" title="Profilul lui"

[最後の引用を追加しました]

そしてあなたの正規表現へ:

#<a\sclass="link"\shref="(.*?)"\stitle="Profilul lui#i

そして、これに対してこれに注意してください。

または、開き角括弧なし:

#a\sclass="link"\shref="(.*?)"\stitle="Profilul lui#i

変化を見る

の出力でさえvar_dumpviper-7 の影響を受けます... しかし、少なくとも一致を見ることができます。

print_r($match[1]);そうすれば、よりまともな印刷が得られることに注意してください:)

于 2013-10-10T20:09:56.540 に答える