HTML ページ内で H1 テキストを取得しようとしています。簡単にするために一部のページでマイクロフォーマットの使用を開始するまで正常に機能する正規表現を使用しました。
問題は、以前に使用した正規表現が機能しなくなったため、最初の正規表現が空の結果を返した場合に実行する別の正規表現を作成したことです。これは私が知っている非常にぎこちないです!!! 以下を 1 つの単純な正規表現に結合するにはどうすればよいですか? :
//Get the H1 title
function get_tag( $attr, $value, $xml )
{
$attr = preg_quote($attr);
$value = preg_quote($value);
$tag_regex2 = '/<h1>(.*?)<\\/h1>/si';
$tag_regex = '/<h1><span itemprop="itemreviewed">(.*?)<\\/span><\\/h1>/si';
preg_match($tag_regex,
$xml,
$matches);
if ($matches[1] == ""){
preg_match($tag_regex2,
$xml,
$matches);
};
return $matches[1];
}