要替换的Javascript正则表达式<;ul>;或<;ol>;只有文本在<;李>;标签
假设我有一个有序或无序的列表,它是字符串形式的。我只需要返回包含在相应父元素的每个列表项中的文本:要替换的Javascript正则表达式<;ul>;或<;ol>;只有文本在<;李>;标签,javascript,regex,replace,Javascript,Regex,Replace,假设我有一个有序或无序的列表,它是字符串形式的。我只需要返回包含在相应父元素的每个列表项中的文本: <ul> <li>Example One</li> <li>Example Two</li> </ul> 例一 例二 我已经完成了这项工作,但显然效率不高: var first = string.replace(/.*<li>(.*)<\/li>.*/g, '$1'); var
<ul>
<li>Example One</li>
<li>Example Two</li>
</ul>
- 例一
- 例二
我已经完成了这项工作,但显然效率不高:
var first = string.replace(/.*<li>(.*)<\/li>.*/g, '$1');
var second = first.replace(/(<ul>|<ol>|<\/ol>|<\/ul>)/g, '');
var first=string.replace(/.*(.*)。*/g,$1');
第二个变量=第一个。替换(/(||||||)/g';
输出是我所期望的,但我知道有一种regex格式可以立即实现,但我对regex还是很熟悉,所以不确定我做错了什么。这就是我所想的:
var newString = string.replace(/(<ul>|<ol>).*<li>(.*)<\/li>.*(<\/ul>|\/<ol>)/g, '$2');
var newString=string.replace(/(|)).- (.*)(*(|\/)/g,$2');
但是,这将以字符串形式返回整个HTML结构:
<ul>
<li>Example One</li>
<li>Example Two</li>
</ul>
- 例一
- 例二
像往常一样,我的朋友们,提前谢谢你。你可以按照模式
/(()- (.*)(|))/g拆分正则表达式,下面的例子你非常接近
const模板=`
- 例一
- 例二
`
const str=template.replace(/((())- (.*)(?)/g,“$3”);
console.log(str)
您可以在模式/(()|- (.*)|(|))/g
中拆分正则表达式,下面的示例非常接近
const模板=`
- 例一
- 例二
`
const str=template.replace(/((())- (.*)(?)/g,“$3”);
console.log(str)代码>;)如果您使用的是Javascript,为什么要使用正则表达式而不是DOM解析等更合理的方法?“以字符串形式排列的有序或无序列表”…字符串form@CertainPerformance我想我应该包括更多的上下文。这是利用一个javascript模板引擎,非常类似于Mustach,因此服务器端我需要在随后呈现给客户端之前操作HTML元素的字符串形式。否则,我绝对愿意解析DOM并做我需要的:)好的,奥斯汀,这现在是有意义的。好吧,是我的错。有人投了反对票。我修复了它,因为你现在完全明白了如果您使用的是Javascript,为什么要使用正则表达式而不是DOM解析等更合理的方法?“以字符串形式排列的有序或无序列表”…字符串form@CertainPerformance我想我应该包括更多的上下文。这是利用一个javascript模板引擎,非常类似于Mustach,因此服务器端我需要在随后呈现给客户端之前操作HTML元素的字符串形式。否则,我绝对愿意解析DOM并做我需要的:)好的,奥斯汀,这现在是有意义的。好吧,是我的错。有人投了反对票。我恢复了它,因为你现在完全明白了。谢谢你,我的人,这确实对我有用:)我想我不清楚正则表达式中捕获组的用法。也许如果你能扩大你的改变?我们将不胜感激,但这不是我们所期望的。再次感谢您,但此答案仍然会输出您不想要的结果。您不想要的输出之前的Html仍在str
中。之后。接受错误的答案对任何人都没有帮助。@GetSet我需要操作一个字符串服务器端,然后在模板中作为DOM元素客户端呈现。我接受作为答案的正则表达式将在呈现之前在服务器端执行。我可能应该在我的问题中包含更多的细节:)我只是想知道你的模板在开始时是否已经有了
(已知知识),在结束时是否已经有了
,为什么你需要正则表达式?编辑后在模式中包含对组的解释谢谢你,我的人,这确实对我有用:)我想我不清楚正则表达式中捕获组的用法。也许如果你能扩大你的改变?我们将不胜感激,但这不是我们所期望的。再次感谢您,但此答案仍然会输出您不想要的结果。您不想要的输出之前的Html仍在str
中。之后。接受错误的答案对任何人都没有帮助。@GetSet我需要操作一个字符串服务器端,然后在模板中作为DOM元素客户端呈现。我接受作为答案的正则表达式将在呈现之前在服务器端执行。我可能应该在我的问题中包含更多的细节:)我只是想知道你的模板在开始时(已知知识)是否已经有了
,在结束时是否已经有了
,为什么你需要对regex进行编辑,以便在模式中包含对组的解释