如果检查字符串 ‘ school’中’ o’的出现次数,则结果为2 。
示例1:使用for循环检查字符的出现
// program to check the number of occurrence of a character
function countString(str, letter) {
let count = 0;
// looping through the items
for (let i = 0; i < str.length; i++) {
// check if the character is at that position
if (str.charAt(i) == letter) {
count += 1;
}
}
return count;
}
// take input from the user
let string = prompt('Enter a string: ');
let letterToCheck = prompt('Enter a letter to check: ');
//passing parameters and calling the function
let result = countString(string, letterToCheck);
// displaying the result
console.log(result);
输出
Enter a string: school
Enter a letter to check: o
2
在上面的示例中,提示用户输入字符串和要检查的字符 。
- 最初,count变量的值为0 。
-
for
循环用于遍历字符串。 -
charAt()
方法返回指定索引处的字符 。 - 在每次迭代期间,如果该索引处的字符与所需的字符相匹配,则count变量将增加1 。
示例2:使用正则表达式检查字符的出现
// program to check the occurrence of a character
function countString(str, letter) {
// creating regex
let re = new RegExp(letter, 'g');
// matching the pattern
let count = str.match(re).length;
return count;
}
// take input from the user
let string = prompt('Enter a string: ');
let letterToCheck = prompt('Enter a letter to check: ');
//passing parameters and calling the function
let result = countString(string, letterToCheck);
// displaying the result
console.log(result);
输出
Enter a string: school
Enter a letter to check: o
2
在上面的示例中,使用正则表达式(regex)查找字符串的出现。
-
let re = new RegExp(letter, 'g');
创建一个正则表达式。 -
match()
方法返回包含所有匹配项的数组。在这里,str.match(re);
给出[“ o”,“ o”] 。 -
length
属性给出数组元素的长度。