4

我正在开发一个 nodejs CMS,用户在本地用 Markdown 写博客文章,上传后我们在 HTML 文件中处理文章。有时用户会my dog.jpg通过复制图片和写字的方式在帖子中添加图片:

![a picture of my dog](my dog.jpg)

我使用uslug将所有文件名转换my dog.jpgmy-dog.jpg. 但是,我还需要使用 uslug 更新博客文章中的链接,因为 a) 否则链接会中断,因为我们只是更改了文件名和 b) 因为节点的大多数降价解析器会因为空格而跳过上述图像语法(而图片确实可以在很多本地 Markdown 编辑器中预览,比如Mou)。

有人知道我如何使用正则表达式来实现这一点吗?

4

1 回答 1

10

你需要很多斜线:

string.replace(/(!\[.*?\]\()(.+?)(\))/g, function(whole, a, b, c) {
    return a + addDashesOrWhatever(b) + c;
});
于 2013-07-15T15:16:09.040 回答