Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以使用正则表达式将子字符串移动到特定位置?_Javascript_Regex - Fatal编程技术网

Javascript 是否可以使用正则表达式将子字符串移动到特定位置?

Javascript 是否可以使用正则表达式将子字符串移动到特定位置?,javascript,regex,Javascript,Regex,背景:我使用quill.js获取一些富文本输入。我想要的结果与HTML非常相似,因此我使用quill.container.firstChild.innerHTML方法,而不是实际序列化数据。但说到锚,而不是 <a href="test.html">Anchor</a> 使用.replace方法,我很容易得到{{link:test.html}}锚,但我需要将链接描述放在锚文本之后。有没有办法将{{link:test.html}与下一个进行交换,以便获得所需的结果?字符串中

背景:我使用quill.js获取一些富文本输入。我想要的结果与HTML非常相似,因此我使用quill.container.firstChild.innerHTML方法,而不是实际序列化数据。但说到锚,而不是

<a href="test.html">Anchor</a>
使用.replace方法,我很容易得到{{link:test.html}}锚,但我需要将链接描述放在锚文本之后。有没有办法将{{link:test.html}与下一个进行交换,以便获得所需的结果?字符串中可以有多个锚点,如:

str = 'This is a <a href="test1.html">test</a>. And <a href="test2.html">another one</a> here.'

是的,您可以在替换字符串中使用捕获组和占位符,前提是它的格式与您显示的格式完全相同:

const str='这是一个。在这里。”;
const result=str.replace/是的,您可以在替换字符串中使用捕获组和占位符,前提是它的格式与您显示的格式完全相同:

const str='这是一个。在这里。”;
const result=str.replace/您还可以使用dom方法。dom是比正则表达式更好的html解析器。这是一个相当简单的替换

str='这是一个。还有这里。” var div=document.createElement'div'; div.innerHTML=str; div.queryselectoral'a'.forEacha=>{ a、 替换为`${a.textContent}{{link:${a.getAttribute'href'}}}` }
console.logdiv.innerHTML您还可以使用dom方法。dom是比正则表达式更好的html解析器。这是一个相当简单的替换

str='这是一个。还有这里。” var div=document.createElement'div'; div.innerHTML=str; div.queryselectoral'a'.forEacha=>{ a、 替换为`${a.textContent}{{link:${a.getAttribute'href'}}}` }
console.logdiv.innerHtml这太棒了!我只是稍微简化了一点,但是str.replace/这太棒了!我只是稍微简化了一点,但是str.replace/如果您使用浏览器或其他可用的DOM解析器,这是我书中的方法。这是一个非常聪明的方法!虽然T.J.Crowder的解决方案似乎更简单,但非常感谢你拓宽了我的视野。@T.J.Crowder对……我认为OP的羽毛笔是所见即所得editor@AgustínDorado-FWIW,这比正则表达式解决方案更健壮-如果您使用的是浏览器或其他可用的DOM解析器,这是我书中的方法。这是一个非常聪明的方法!虽然T.J.Crowder的解决方案似乎更简单,但非常感谢你拓宽了我的视野。@T.J.Crowder对……我认为OP的羽毛笔是所见即所得editor@AgustínDorado-FWIW,这比正则表达式解决方案更健壮-
str = 'This is a <a href="test1.html">test</a>. And <a href="test2.html">another one</a> here.'
str = 'This is a test{{link:test1.html}}. And another one{{link:test2.html}} here.'