更改 marked.js image/link 表达式
change marked.js image/link expression
我需要更改marked.js
图像表达。
原表达式为:/^\!?\[(inside)\]\(href\)(\w*\S*)*/
---> ![]()
我需要获取所有图像的 id,所以我需要转换表达式以从中获取 id 值 ----> {>"id"<}
.
我尝试将表达式更改为如下所示:/^\{\>index\>\}\!?\[(inside)\]\(href\)(\w*\S*)*/
之后,我需要编写一个表达式来获取 {>index<}
的 "index" 值
内部和 href 的示例:
inline._inside = /(?:\[[^\]]*\]|[^\[\]]|\](?=[^\[]*\]))*/;
inline._href = /\s*<?([\s\S]*?)>?(?:\s+['"]([\s\S]*?)['"])?\s*/;
inline._index = /(?:^\{\>[^\<\}]*\<\}|[^\{\>\<\}]|\<\}(?=[^\{\>]*\<\}))/; // I tryed this, but not works
//replacing
inline.link = replace(inline.link)
('inside', inline._inside)
('href', inline._href)
('index', inline._index)
();
谁能帮我构建这个表达式?
如果我没看错,你想从 link 中获取一些具有特定格式的数据,例如{>"id"<}and_the_rest
。
因此,目前 best regex I can suggest 可能看起来像 {>([^<]*)<}\!?\[([^]]+)\]\(([^)]*)\)(\w*\S*)*
。它假定您在 >
和 <
内有 "id","inside" 在 [
和 ]
内,"href" 在 (
和)
一个接着一个。
function FindValues(str) {
var re = /\{\>([^<]*)\<\}\!?\[([^\]]+)\]\(([^\)]*)\)(\w*\S*)*/;
var m;
if ((m = re.exec(str)) !== null)
{
return [m[1], m[2], m[3], m[4]];
}
}
var vls = FindValues('{>"id"<}and_the_rest');
document.getElementById('id').innerHTML = "ID: " +vls[0] + "<br>INSIDE: " + vls[1] + "<br>HREF: " + vls[2] + "<br>REST: " + vls[3];
<div id='id'/>
我需要更改marked.js
图像表达。
原表达式为:/^\!?\[(inside)\]\(href\)(\w*\S*)*/
---> ![]()
我需要获取所有图像的 id,所以我需要转换表达式以从中获取 id 值 ----> {>"id"<}
.
我尝试将表达式更改为如下所示:/^\{\>index\>\}\!?\[(inside)\]\(href\)(\w*\S*)*/
之后,我需要编写一个表达式来获取 {>index<}
内部和 href 的示例:
inline._inside = /(?:\[[^\]]*\]|[^\[\]]|\](?=[^\[]*\]))*/;
inline._href = /\s*<?([\s\S]*?)>?(?:\s+['"]([\s\S]*?)['"])?\s*/;
inline._index = /(?:^\{\>[^\<\}]*\<\}|[^\{\>\<\}]|\<\}(?=[^\{\>]*\<\}))/; // I tryed this, but not works
//replacing
inline.link = replace(inline.link)
('inside', inline._inside)
('href', inline._href)
('index', inline._index)
();
谁能帮我构建这个表达式?
如果我没看错,你想从 link 中获取一些具有特定格式的数据,例如{>"id"<}and_the_rest
。
因此,目前 best regex I can suggest 可能看起来像 {>([^<]*)<}\!?\[([^]]+)\]\(([^)]*)\)(\w*\S*)*
。它假定您在 >
和 <
内有 "id","inside" 在 [
和 ]
内,"href" 在 (
和)
一个接着一个。
function FindValues(str) {
var re = /\{\>([^<]*)\<\}\!?\[([^\]]+)\]\(([^\)]*)\)(\w*\S*)*/;
var m;
if ((m = re.exec(str)) !== null)
{
return [m[1], m[2], m[3], m[4]];
}
}
var vls = FindValues('{>"id"<}and_the_rest');
document.getElementById('id').innerHTML = "ID: " +vls[0] + "<br>INSIDE: " + vls[1] + "<br>HREF: " + vls[2] + "<br>REST: " + vls[3];
<div id='id'/>