Gum*_*mbo 66
您可以删除字符串中的任何其他字符并检查长度:
str.replace(/[^a]/g, "").length
Run Code Online (Sandbox Code Playgroud)
这是怎么算的很多a小号都在str.
Sar*_*raz 35
这a 包括以下示例:
str = "A man is as good as his word";
alert(str.split('a').length-1);
Run Code Online (Sandbox Code Playgroud)
如果你想要不区分大小写,你会想要类似的东西
alert(str.split( new RegExp( "a", "gi" ) ).length-1);
Run Code Online (Sandbox Code Playgroud)
所以它抓住"A"和"a"......"g"标志并不是真的需要,但你需要"i"标志
Dra*_*zah 15
使用RegEx计算字符串中"a"的数量.
var string = 'aajlkjjskdjfAlsj;gkejflksajfjskda';
document.write(string.match(/a/gi).length);Run Code Online (Sandbox Code Playgroud)
让我解释一下这是如何工作的:
string.match这是一个RegEx方法.它在指定的字符串中搜索指定的RegEx(在本例中为字符串"string").
(/a/gi)这是实际的RegEx.它写道,"找到一个角色." 这很简单.它还带有两个标志,"g"和"i"."g"表示找到字符"a"的所有出现.否则它只会找到第一个,它永远不会超过第一个.第二个标志是"i".它使RegEx匹配该角色的所有情况.如果那个标志(i)不在那里,上面的代码只会计数4,因为它会跳过字符串中的大写"A".由于的"I",它将匹配上和下壳体.如果要匹配字母大小写,请删除"i".
string.match返回所有匹配的数组,因此我们使用该length方法来检索数组条目的数量.就那么简单!
这是因为如果我们希望能够计算任何种类的字符,那么我们需要考虑两个表达式。对于一个普通的字符和第二的特殊例如像人物[,],^等等。忘记它很容易,但是即使我们记得它,我认为我们也不必要扩展我们的代码。
在这种情况下,对于字符串str和字符,ch可以使用以下每个解决方案:
let count = str.split(ch).length - 1
Run Code Online (Sandbox Code Playgroud)
(感谢@Sarfraz)
要么
let count = str.split('').filter(x => x == ch).length
Run Code Online (Sandbox Code Playgroud)
要么
let count = 0
str.split('').forEach(x => x == ch ? count++ : null)
Run Code Online (Sandbox Code Playgroud)
请享用!
| 归档时间: |
|
| 查看次数: |
60879 次 |
| 最近记录: |