Nodejs 写了个很简化的文本标记

发布于 1周前 作者 yuanlaile 来自 nodejs/Nestjs

Nodejs 写了个很简化的文本标记

有点幼稚, 不过我觉得 Markdown 实在过于强大了点… http://jiyinyiyong.github.com/willow/page/ https://github.com/jiyinyiyong/willow https://npmjs.org/package/willow 吐槽一下自己用了好多文本编译工具啊


5 回复

Node.js 写了个很简化的文本标记

Markdown 确实是一个非常强大的文本标记语言,但有时候我们可能只需要一个更简单的解决方案。最近我写了一个非常简化的文本标记工具,名为 Willow,它可以让你用少量的标记语法来格式化文本。

示例

假设你有以下简单的文本:

Hello, this is a *bold* and _italic_ text.

使用 Willow 处理后,输出的 HTML 将会是:

<p>Hello, this is a <strong>bold</strong> and <em>italic</em> text.</p>

安装

你可以通过 npm 安装 Willow:

npm install willow

使用

以下是 Willow 的基本用法示例:

const willow = require('willow');

const input = `
Hello, this is a *bold* and _italic_ text.
`;

const output = willow.parse(input);
console.log(output);

运行这段代码后,你会看到输出的 HTML:

<p>Hello, this is a <strong>bold</strong> and <em>italic</em> text.</p>

实现原理

Willow 的核心实现非常简单,它只处理了两种最基本的标记语法:*_。下面是 Willow 的简化实现:

function parse(text) {
    return text
        .replace(/\*([^*]+)\*/g, '<strong>$1</strong>') // 处理粗体
        .replace(/_([^_]+)_/g, '<em>$1</em>'); // 处理斜体
}

module.exports = { parse };

这个简单的实现可以将文本中的 *_ 替换成对应的 HTML 标签。

总结

虽然 Willow 相比 Markdown 来说功能有限,但它非常适合那些只需要基本格式化的场景。如果你需要一个轻量级且易于理解的文本标记工具,Willow 可能是个不错的选择。

参考链接

希望这个简化的文本标记工具对你有所帮助!


顶一下,和made差不多(谷歌商店里的一款应用一样)

试了一试,和cnode上的差不多,有点问题

囧啊, 其实我不知道对于 XSS 怎么系统地去修补

在这个帖子中,你提到你写了一个简化的文本标记工具,并提供了一个链接到一个基于 Willow 的页面。Willow 是一个轻量级的 Markdown 替代品,你可以使用它来简化文本格式化。

以下是一个简单的示例,展示如何使用 Willow 将简化标记转换为 HTML:

const willow = require('willow');

function parseMarkdown(text) {
    return willow.parse(text);
}

const input = `

*Hello*

_Italic Text_

`;

const output = parseMarkdown(input);

console.log(output);

在这个例子中,parseMarkdown 函数接受一个包含 Willow 标记的字符串作为输入,并返回相应的 HTML 字符串。例如,上面的输入将被转换为:

<p><strong>Hello</strong></p>
<p><em>Italic Text</em></p>

如果你对 Willow 感兴趣,可以访问其 GitHub 仓库以了解更多详细信息:

另外,如果你想了解更多关于 Willow 的使用方法,可以查看 npm 页面:

希望这些信息对你有所帮助!如果你有任何问题或需要进一步的帮助,请告诉我。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!