Javascriptで改行をbr,pタグに変換するツール

Javascriptを使って、改行をbrタグとpタグ(段落分け)に変換するツールを作成しました。

テキストファイルからHTMLファイルを作成するときに役立つかも?

改行をbrタグとpタグに変換するツール

基本的には正規表現を使えば簡単ですが、改行の変換に\nと\rの両方の変換が必要な点は注意すべきかもしれません。
ソースは次の通りです。

実際には、フォームからのデータ受け取りなどの処理もちょこっとだけあるのですが、今回は本質のみ抜き出します。

var p = “</p><p>”;

//文字列texの改行をbrタグおよびpタグへ変換

//最初にpタグを付加
tex = “<p>\n” + tex;

// \nだけでなく、\rも変換するのがポイント。
// 改行はブラウザによって、\r\nだったり、\nだけだったりするので、
// まず最初に\r\nを変換して、その後\nを変換する
tex = tex.replace(/\r\n/g, “<br />”);
tex = tex.replace(/(\n|\r)/g, “<br />”);

// 2個以上連続する<br />をpタグに変換。
// ただし、”\n”+p+”\n”の”p”は最初に定義した変数です。
tex = tex.replace(/(<br \/>){2,}/g, “\n”+p+”\n”);

tex = tex.replace(/<br \/>/g, “<br />\n”);

// 最後にもpタグを付加
tex += “</p>”;

// たまに 〜</p><p></p> と何もない段落が出来てしまう場合があるのでそれを削除
tex = tex.replace(/<p>(\r\n|\n|\r}\b)*<\/p>/g, “”);

// pタグの直後にbrタグが来る場合を修正
tex = tex.replace(/<p>(\r\n|\n|\r}\b)*<br \/>/g, “<p>”);

実際の動作については、こちらを参照してください。
改行をbrタグとpタグに変換するツール

カテゴリー: JavaScript   パーマリンク

Javascriptで改行をbr,pタグに変換するツール への3件のコメント

  1. ᒪink exchange is nothing els however іt іs just placing thee other person’s websitе link on yoᥙr page att proper plɑce and other person ԝiⅼl also do
    similar for you.

  2. Lonny Lechuga より:

    Howdy!

    You Need Leads, Sales, Conversions, Traffic for muzin.org ? Will Findet…

    I WILL SEND 5 MILLION MESSAGES VIA WEBSITE CONTACT FORM

    Don’t believe me? Since you’re reading this message then you’re living proof that contact form advertising works!
    We can send your ad to people via their Website Contact Form.

    IF YOU ARE INTERESTED, Contact us => lisaf2zw526@gmail.com

    Regards,
    Lechuga

  3. Kellee Knipe より:

    Hello

    NOT SATISFIED WITH YOUR HOSTING ? GET A NEW ONE for muzin.org

    Check Out Our Coupons for This Month & Get Your Domain, Hosting and SSLs For Less!
    Namecheap Offers Amazing Deals That Save You Money Across Our Product Range!
    Best Value Web Products. 20 Years Serving You. Free WhoisGuard. #1 for Value Vs. Others.

    Check Out Our Coupons for This Month => https://bit.ly/38jRmGU

    Thanks, Kellee Knipe
    If you no longer wish to hear from us, please reply this email.

Lonny Lechuga への返信 コメントをキャンセル

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>