HTMLタグから著者名を抽出したい。タグは次のようになります。
<a href="http://somewhere.com"> Manfred </a>
ただし、名前が長すぎる場合は、次のようになります。
<a title="floormanager004" href="http://somewhere.com"> floormanage... </a>
両方のケースをカバーする次の正規表現があります。
~<a.*(title="(.{2,50})".*|>(.*))</a>~Usi
これは 2 番目のケースではうまく機能し、次のような 2 次元配列を返します。
array(2) {
[0]=>
string "title="floormanager004" href="http://somewhere.com"> floormanage... "
[1]=>
string "floormanager004"
}
ただし、最初のケースでは、配列には追加の空のフィールドが含まれています。
array(2) {
[0]=>
string "> Manfred "
[1]=>
string ""
[2]=>
string " Manfred "
}
このフィールドが表示される理由と、それを取り除く方法を教えてください。
免責事項: 正規表現を使用してhtmlを解析する場合、非常に時間がかかり、これを行うべきではないことはわかっていますが、私の場合、XPATHなどよりも高速であることが証明されています。これについてコメントしないでください。