参考
Github
reverse_markdown
× マークダウン形式 → HTML形式 変換ではなく
○ HTML形式 → マークダウン形式 変換したい
そんな時に便利なgemでした。
実装経緯
- ウィジウィグ使用して保存されているHTML形式データを取り出してマークダウン形式に変換
- それをCSV出力
(※今回ウィジウィグ・CSV出力については割愛させていただきます。)
上記を行う事があったため
reverse_markdown(gem)
を使用して実装してみた。ありがたや...
忘れないようにメモ。
結論
テスト的に下記のようなHTML文を変換すると...
<h3>項目タイトル</h3>
<p><a href="https://www.yahoo.co.jp/">test</a></p>
<p><img alt="【画像出典元】" height="165" src="https://www.google.com/"></p>
<p> </p>
<p> </p>
<p> </p>
<p><u>小見出し線</u></p>
<p><strong>太字</strong></p>
<p> </p>
<p>改行<br />
改行</p>
<p><a href="http://www.yahoo.co.jp" rel="nofollow noopener" target="_blank"><img alt="test" loading="lazy" src="sakura.jpg" /></a></p>
<p><a href="sakura.jpg" rel="noopener noreferrer" target="_blank"><img alt="test" src="test.jpg" style="max-width:100%;" /></a></p>
こうなった(CSV出力データ)
1.項目タイトル
### 項目タイトル
## 項目タイトル
[test](https://www.yahoo.co.jp/)
![【画像出典元】](https://www.google.com/)
<u>小見出し線</u>
**太字**
改行
改行
[![test](test.jpg)](http://www.yahoo.co.jp)
[![test](test.jpg)](test.jpg)
マークダウン形式を変換してくれるサイト(Qiita)にコピペしたらこんな感じ(下記)
小見出し線
太字
改行
改行
## わかったこと(箇条書き)
- brタグ、pタグは変換時に消える(gsubで対応すればなんとかなる)
- figureタグに囲まれている画像データ(img要素)は変換されない
その他は試してないので分からない。(ご自身でお試しください。)
使い方(基本機能のみ)
ReverseMarkdown.convert 変数 #変数にはHTML要素を格納した変数
私はこんな感じで使用させていただきました。
他にもオプションなどがある様でしたが、今回は基本的なものだけを使わせていただきました。
興味がある方ははじめに記載した参考Github「reverse_markdown」からご確認ください。