Markdown-based formatting

by Manuel Souto Pico

HTML

<html>

  <body>
    <h1>Markdown-based formatting</h1>

    <h2>Formatting:</h2>

    <p>I like __emphasized__ text.</p>
    <p>I like **strong** text.</p>
    <p>I like ^^underlined^^ text.</p>

  </body>

</html>

CSS

ins {
  background:#e6ffe6;
}

del {
  background:#ffe6e6;;
}

JavaScript

var formatted = document.body.innerHTML.replace(/(?<![*])\*\*(?![*])([^*\n]+)(?<![*])\*\*(?![*])/g, "<b>$1</b>")
formatted = formatted.replace(/(?<![_])__(?![_])([^_\n]+)(?<![_])__(?![_])/g, "<i>$1</i>")
document.body.innerHTML = formatted.replace(/(?<![\^])\^\^(?![\^])([^^]+)(?<![\^])\^\^(?![\^])/g, "<u>$1</u>")