すべての html タグを削除したいが、
EG は残したい<a href="http://www.domain.com/">Link Title</a>
これまでのところ、</a>
パーツを削除することを除いて、これは私にとってはうまくいきます。
sed -e 's/<[^">]*>//g'
これを行うためのより良い方法があるかどうかを知りたいです。
基本的に、あなたが書いたものは、二重引用符が含まれていない<Stuff>
場所のブロックをすべて削除します。Stuff
たとえば、次のような完全に有効な html があったとします。
<a href='http://www.domain.com/'>Link Title</a>
または、次のような奇妙な html でさえあります。
<a href=http://www.domain.com/>Link Title</a>
それはあなたにはうまくいきません。
正規表現は、処理できる可能性のあるバリエーションの全範囲を正確に知っている場合を除いて、HTML を処理する方法として悪名高いと見なされています。
したがって、最初にこの視点を読んでください。
次のような提案ができます。
sed -e 's/<[^a>/!][^ >][^>]*>//g;s/<\/[^a>][^>]*>//g'