gpt4 book ai didi

javascript - 使用正则表达式结果集的一部分进行匹配

转载 作者:行者123 更新时间:2023-11-30 17:58:36 24 4
gpt4 key购买 nike

是否可以使用正则表达式的任何子结果来组成整个正则表达式,请考虑以下代码段:

var ret = "{hello} {world}";
ret = ret.replace(/(^|[^{}])(\{|\})([^{}]|$)/g, '$1$2$2$3');
ret; // {{hello}} {{world}}

但是当我将 }{ 放在一起时,上面的正则表达式将失败,这也是有道理的,因为我没有针对 }{ 或字符串的开头进行测试,然后{} 之一,然后又不是 {} 或字符串结尾:

var ret = "{hello}{world}";
ret = ret.replace(/(^|[^{}])(\{|\})([^{}]|$)/g, '$1$2$2$3');
ret; // {{hello}{world}}

是否可以使用第一个结果集生成第二个结果集,然后再生成第三个:

/(^|[^{}])($1)([^{}]|$)/g, '$1$2$2$3'
// $1 - or something similarly

我知道我可以使用多个 ·replace 方法调用,但如果有一个就很酷了。

谢谢


不要考虑代码的可读性。

最佳答案

这个正则表达式适合你吗?

ret.replace(/[{]+(.*?)[}]+/g, '{{$1}}')

p.s.:我不太确定您要实现的目标。

关于javascript - 使用正则表达式结果集的一部分进行匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17592217/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com