一尘不染

计算Java字符串中字符出现的次数

javascript

我需要计算一个字符在一个字符串中出现的次数。

例如,假设我的字符串包含:

var mainStr = "str1,str2,str3,str4";

我想找到逗号,字符的数量,即3。以及沿逗号分割后的各个字符串的数量,即4。

我还需要验证每个字符串,即str1或str2或str3或str4不应超过15个字符。


阅读 329

收藏
2020-04-25

共1个答案

一尘不染

我已经更新了这个答案。我喜欢更好地使用比赛的想法,但是比较慢:

console.log(("str1,str2,str3,str4".match(/,/g) || []).length); //logs 3

console.log(("str1,str2,str3,str4".match(new RegExp("str", "g")) || []).length); //logs 4

如果您事先知道要搜索的内容,则使用正则表达式文字;如果不知道,则可以使用RegExp构造函数,并将该g标志作为参数传递。

match返回null没有结果,因此|| []

我在2009年的原始答案如下。它不必要地创建数组,但使用拆分速度更快(截至2014年9月)。我很矛盾,如果我真的需要速度,那我毫无疑问会使用拆分,但我更喜欢使用match。

旧答案:

如果要查找逗​​号:

(mainStr.split(",").length - 1) //3

如果您正在寻找str

(mainStr.split("str").length - 1) //4
2020-04-25