※ ChatGPTを利用し、要約された質問です(原文:[正規表現][入れ子]ネストされたリストをインデントに置換したい
)
[正規表現][入れ子]ネストされたリストをインデントに置換したい
このQ&Aのポイント
preg_replaceかpreg_replace_callbackを使って、ネストされたリストタグを全角空白によるインデントに書き換えたい。
1階層目のliならインデントひとつ、2階層目のliならインデントふたつという具合にしたいです。
置換完了後のHTMLのイメージは、文章の前にdivタグが追加され、インデントが全角空白になります。
[正規表現][入れ子]ネストされたリストをインデントに置換したい
[正規表現][入れ子]ネストされたリストをインデントに置換したい
preg_replaceかpreg_replace_callbackを使って、
ネストされたリストタグを全角空白によるインデントに書き換えたく思っています。
(携帯表示するため)
1階層目のliならインデントひとつ。
2階層目のliならインデントふたつ。
・
・
・
という具合にしたいのです。
以下は全角空白をわかりやすくするために□で置き換えました。
----------------------------------------------------------------------------
【現在のHTML】
文章1
文章2
<ul>
<li>リストA</li>
<li>リストB</li>
<li>リストC</li>
</ul>
<ul>
<li>
<ul>
<li>リストあ</li>
<li>リストい</li>
<li>リストう</li>
</ul>
</li>
</ul>
----------------------------------------------------------------------------
【置換完了後のブラウザ表示】
文章1
文章2
□リストA
□リストB
□リストC
□□リストあ
□□リストい
□□リストう
----------------------------------------------------------------------------
【置換完了後のHTMLのイメージ】
文章1
文章2
<div>
<div>□リストA</div>
<div>□リストB</div>
<div>□リストC</div>
</div>
<div>
<div>
<div>
<div>□□リストあ</div>
<div>□□リストい</div>
<div>□□リストう</div>
</div>
</div>
</div>
----------------------------------------------------------------------------
どうぞ、よろしくお願い致します。
お礼
こんなに早くスマートでシンプルな解決法を提示してくださってありがとうございます。 思った通りの結果が得られました。大変感謝しています。 static をこのように使ったことがなかったため勉強になりました。今後にも活かしたいと思います。