gpt4 book ai didi

javascript - 计算正则表达式中保留字符的出现次数 (Javascript)

转载 作者:行者123 更新时间:2023-11-30 09:36:29 25 4
gpt4 key购买 nike

我正在尝试计算给定字符串中 Regexp 中正常保留字符的出现次数。例如,星号 (*) 是 Regexp 中的保留字符。所以,虽然我可以这样做:

var textareaId = document.getElementById("textareaId").value;
var occ = (textareaId.match(/i/g) || []).length;
alert(occ);

我不能这样做:

var textareaId = document.getElementById("textareaId").value;
var occ = (textareaId.match(/*/g) || []).length;
alert(occ);

我尝试使用与星号 (\u002A) 等效的 unicode、转义星号、使用 Regexp 构造函数并将星号放入数组中,但它似乎不匹配。当我直接把它放在变量 occ 中时,它总是给出这个错误:

Uncaught SyntaxError: Unexpected token *

这也适用于正则表达式中的所有其他保留字符(方括号、括号、胡萝卜等)。

如有任何帮助,我们将不胜感激。

最佳答案

您应该使用反斜杠 (\) 转义星号。

这是一个例子:

str = 'alskjdfalk*sdjf alksdjf* aljsdf01830*912838123*'
var occ = (str.match(/\*/g) || []).length;
console.log(occ);

关于javascript - 计算正则表达式中保留字符的出现次数 (Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43288444/

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