私は現在、HTMLをインポートしてプレーンテキストに変換するperlスクリプトを持っています。私はHTML :: TagFilterを使ってすべてのHTMLタグを削除していますが、私たちが1つの問題に遭遇した場合を除き、ほぼ完全に動作しています。 HTMLが含まれている場合など、これらのタグ以下の例の入力で「キャプション」などの非スタンドHTMLタグが削除されていない:私は助けを必要と何テキスト入力を処理するPerl正規表現
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam pulvinar, odio ut gravida fringilla, tellus mi ultrices felis, quis porta lacus sem ut lacus. Vestibulum massa justo, tristique id aliquet in, dapibus eu leo. Nam sapien risus, dictum et porttitor quis, egestas quis dui. Ut nec nisl felis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
[caption id="sample-id" align="sample-align" width="225" caption="Sample Caption"]<a href="http://www.domain.com/image.jpg"><img class="sample-image-class" title="Sample Title" src="http://www.domain.com/image.jpg" alt="Sample Alt" width="225" height="300" /></a>[/caption]
In hac habitasse platea dictumst. Duis imperdiet bibendum dolor ut ullamcorper. Suspendisse dui erat, facilisis sed aliquet non, elementum eu urna. Donec non nisi vel augue gravida imperdiet sed id tortor. Maecenas ullamcorper velit non dui imperdiet hendrerit.
は完全にこのコンテンツを削除するための簡単なPerlの正規表現であります。私はさまざまなアプローチを試みましたが、何も動作していないようです。私はそれが優れている誰かのために簡単な運動です願ってい
$text =~ s/[(\w)+](.*)[\/(\w)+]//g;
:私が探しているブラケットを使用して、非標準のHTMLタグのすべての出現を検索し、削除します以下のようなもの[]であります私よりも正規表現で。
ご協力いただきありがとうございます。
私は 'HTML :: TagFilter'を知らないので、これは正直な質問ですが、あなただけの' $自己> deny_tags() 'と' caption'を追加することはできませんか? – CanSpice
@CanSpice - 残念ながら、deny_tags()は<> not []を使用する標準のHTML形式のタグのみをサポートしているので動作しません。 –
ああ、そうだ。実際にはHTMLではなく、HTMLのように見えるが、<>の代わりに[]を使うマークアップタグです。 – CanSpice