Javascript获取字符串出现次数

Javascript获取字符串出现次数,javascript,regex,Javascript,Regex,我试图返回字符串s.t()在字符串中被找到的次数,但我无法获得正确的正则表达式 比如说 var string = 'function(test) {s.t(); s.t(dsabf); s.t();}' var re = new RegExp('s\.t\(\)', "g"); return re; 应该返回一个包含2个元素的数组['s.t()','s.t()'],但它有3个元素['s.t','s.t','s.t'] 我也尝试过使用^s\t\(\)$,但结果不匹配 如何修复ReGEX以使这项工

我试图返回字符串
s.t()
在字符串中被找到的次数,但我无法获得正确的正则表达式

比如说

var string = 'function(test) {s.t(); s.t(dsabf); s.t();}'
var re = new RegExp('s\.t\(\)', "g");
return re;
应该返回一个包含2个元素的数组
['s.t()','s.t()']
,但它有3个元素
['s.t','s.t','s.t']

我也尝试过使用
^s\t\(\)$
,但结果不匹配


如何修复ReGEX以使这项工作如愿以偿?

使用ReGEX查找文本文本。你应该考虑的是:你正在通过的代码中的反斜杠<代码> new ReGeP不会最终成为模式中的反斜杠,因为它们是由字符串文字处理的。使用正则表达式文本:
var re=/s\.t\(\)/g或转义它们,使它们真正成为反斜杠:
var re=new RegExp('s\\.t\\(\\),“g”)
(你实际上不必逃避
当它不在一个组中时,但是…@t.J.Crowder这很有意义,它现在可以工作了