マークダウンで「> 引用」を、HTMLエスケープ後、<blockquote>へHTML変換したい


**マークダウンで「引用」**  
・先頭に>を記述

[code]

    > 引用  
    
[/code]

* * *

**Q**  
・上記を含むマークダウン文字列を「HTMLエスケープ」後「HTML変換」するには、どうすれば良いでしょうか？

* * *

**試したこと**  
・変換を避ける方法を思いつかなかったため、変換後、先頭が「`"&gt;"`」の場合「">"」へ戻そうと思ったのですが、うまくいきません

[code]

    $targetStr = "> 引用マークダウンはなぜこの記号なの？";
    preg_replace("/^&gt;/", ">", htmlspecialchars($targetStr, ENT_QUOTES, 'UTF-8'));
    
[/code]




> マークダウン文字列を「HTMLエスケープ」後「HTML変換」するには、どうすれば良いでしょうか？

  * markdownにはHTML断片を含むことができる
  * `>` などHTML上意味があるがmarkdown文法でも使われている文字が存在する

ので、markdownを変換する前にHTMLエスケープをしてはいけません。

HTMLタグを取り除きたいのであれば、

  * markdownパーサの機能を使う
  * markdownパーサのコールバック処理などを使って自分で書く
  * 変換後のHTMLをDOM操作する

などの方法が考えられます。

