跳到主要内容

JavaScript程序检查字符串中字符的出现次数

要理解这个示例,你应该具备以下 JavaScript 编程 主题的知识:

如果你检查字符串 'school' 中 'o' 出现的次数,结果是 2

示例 1:使用 for 循环检查字符出现次数

// 程序用于检查字符出现的次数

function countString(str, letter) {
let count = 0;

// 遍历字符串中的每个字符
for (let i = 0; i < str.length; i++) {
// 检查该位置的字符是否为所需字符
if (str.charAt(i) == letter) {
count += 1;
}
}
return count;
}

// 从用户那里获取输入
const string = prompt("输入一个字符串:");
const letterToCheck = prompt("输入一个要检查的字符:");

// 传入参数并调用函数
const result = countString(string, letterToCheck);

// 显示结果
console.log(result);

输出

输入一个字符串:school
输入一个要检查的字符:o
2

在上面的示例中,用户被提示输入一个字符串和要检查的字符。

  • 开始时,count 变量的值为 0
  • 使用 for 循环遍历字符串。
  • charAt() 方法返回指定索引处的字符。
  • 在每次迭代期间,如果该索引处的字符与所需字符匹配,则 count 变量增加 1

示例 2:使用正则表达式检查字符出现次数

// 程序用于检查字符出现的次数

function countString(str, letter) {
// 创建正则表达式
const re = new RegExp(letter, "g");

// 匹配模式
const count = str.match(re).length;

return count;
}

// 从用户那里获取输入
const string = prompt("输入一个字符串:");
const letterToCheck = prompt("输入一个要检查的字符:");

// 传入参数并调用函数
const result = countString(string, letterToCheck);

// 显示结果
console.log(result);

输出

输入一个字符串:school
输入一个要检查的字符:o
2

在上述示例中,使用了正则表达式(regex)来查找字符串中字符的出现次数。

  • const re = new RegExp(letter, 'g'); 创建了一个正则表达式。
  • match() 方法返回包含所有匹配项的数组。这里,str.match(re); 返回 ["o", "o"]。
  • length 属性给出数组元素的长度。