ご返信ありがとうございます!
h3 タグが id 属性を持っていたりしませんか?
はい、持っています。
持っている場合この書き方だとおかしいのでしょうか、、?
以下に訂正し、無事表示ができました。
// 正規表現を使用して <h3>...</h3> の内容を抽出
preg_match_all('/<h3>([^<]+)<\/h3>/', $content_before_h2, $matches);
↓
preg_match_all('/<h3[^>]*>(.*?)<\/h3>/', $content_before_h2, $matches);
ありがとうございました。