perl を使用して、HTML 文字列内のセクション タグのすべてのコンテンツを取得したいと考えています。次のコード行を使用していますが、機能していないようです。
$article_content =~ s/^.*?<section>(.*)<\/section>.*?$/$1/;
perl を使用して、HTML 文字列内のセクション タグのすべてのコンテンツを取得したいと考えています。次のコード行を使用していますが、機能していないようです。
$article_content =~ s/^.*?<section>(.*)<\/section>.*?$/$1/;
HTML の解析に正規表現を使用しないでください。HTML を正規表現で確実に解析することはできません。HTML が予想から変更されるとすぐに、コードが壊れます。Perl モジュールで HTML を適切に解析する方法の例については、http://htmlparsing.com/perl.htmlを参照してください。
The first problem is that you assume .
matches any character, but that's only the case when using /s
.
に変更(.*)
して(.*?)
、それが役立つかどうかを確認します。