showdown.js 扩展名:匹配多词扩展名
showdown.js extension: match multiword extension
我想使用 showdown.js
创建自定义降价标签,这样:
==highlighted text==
呈现:
<mark>highlighted text</mark>
使用 twitter
扩展作为基准,我一直在尝试:
// #highlighted# syntax
{
type: 'lang',
regex: '\B(\\)?==([\S]+)\b',
replace: function (match, leadingSlash, highlighted) {
// Check if we matched the leading \ and return nothing changed if so
if (leadingSlash === '\') {
return match;
} else {
return '<mark>' + highlighted + '</mark>';
}
}
},
但这只能让我突出显示单个单词,例如
- ==苹果==梨
- 苹果梨
我想使用类似于 **
的 ==
。
我认为问题出在正则表达式上,但似乎无法确定。有人可以建议吗?
如果我理解正确,你可以使用这个简单的正则表达式:
regex: "==\s*(.+?)\s*==";
并使用匹配组#1。
我想使用 showdown.js
创建自定义降价标签,这样:
==highlighted text==
呈现:
<mark>highlighted text</mark>
使用 twitter
扩展作为基准,我一直在尝试:
// #highlighted# syntax
{
type: 'lang',
regex: '\B(\\)?==([\S]+)\b',
replace: function (match, leadingSlash, highlighted) {
// Check if we matched the leading \ and return nothing changed if so
if (leadingSlash === '\') {
return match;
} else {
return '<mark>' + highlighted + '</mark>';
}
}
},
但这只能让我突出显示单个单词,例如
- ==苹果==梨
- 苹果梨
我想使用类似于 **
的 ==
。
我认为问题出在正则表达式上,但似乎无法确定。有人可以建议吗?
如果我理解正确,你可以使用这个简单的正则表达式:
regex: "==\s*(.+?)\s*==";
并使用匹配组#1。