You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中匹配含竖线的"OOR|"并统计出现次数?

解决"OOR|"出现次数统计问题

你之前的两种写法都存在问题:

  • (/OOR/g)会匹配所有独立的"OOR"文本,不管后面有没有竖线,所以会统计到4次(对应字符串里的"OOR|"、"OOR "、"OOR|"、"OOR "中的OOR)
  • (/OOR|/g)因为包含空匹配规则,会导致正则引擎陷入无限循环,因此报错

正确的做法是转义竖线字符——|在正则里是分支匹配的特殊符号,要匹配字面量的|必须加反斜杠转义。使用如下代码即可得到预期的2次结果:

var sTest = "OOR|the OOR me|this is test|OOR|OOR this is me";
var count = (sTest.match(/OOR\|/g) || []).length;
console.log(count); // 输出2

如果不想用转义符,也可以用字符集[|]来匹配竖线,正则写成/OOR[|]/g,效果完全一致。

内容的提问来源于stack exchange,提问作者Jin Yong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 03:36:28