gpt4 book ai didi

javascript - 在 .split() 函数中使用捕获组

转载 作者:行者123 更新时间:2023-11-29 15:26:41 24 4
gpt4 key购买 nike

我有一个字符串,我想使用 '|' 将它拆分成数组字符但不是'\|':

var a = 'abc\&|\|cba';
var b = a.split(/([^\\])\|/);

结果:

b = ["abc", "&", "|cba"]

预期输出:

b = ["abc\&", "\|cba"]

基本上我无法在 .split() 函数中正确使用捕获组。

最佳答案

您可以使用正向前瞻进行拆分。

带有转义的反斜杠

var a = 'abc\\&|\\|cba';
var b = a.split(/\|(?=\\)/);
console.log(b);

没有转义反斜杠

/\|(?=\|)/

  • \| 按字面意思匹配字符 |

  • (?=\|) Positive Lookahead - 断言下面的正则表达式可以匹配

    • \| 按字面意思匹配字符 |

基本上它会寻找一个管道,如果后面有另一个管道则拆分。

var a = 'abc\&|\|cba';
var b = a.split(/\|(?=\|)/);
console.log(b);

关于javascript - 在 .split() 函数中使用捕获组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38562445/

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