gpt4 book ai didi

javascript - 用于使用 javascript 在循环中提取单独字母的正则表达式

转载 作者:行者123 更新时间:2023-11-29 17:24:16 25 4
gpt4 key购买 nike

我正在编写一个脚本来创建在线作者识别指标。我在文献中遇到的一件事是计算每个字母的频率(多少个 a、多少个 b 等),而不考虑大小写。因为我不想为每个字母创建一个单独的语句,所以我试图循环这个东西,但我无法弄清楚。我能想到的最好办法是将 ASCII 字母代码转换为十六进制,然后……希望奇迹发生。

到目前为止,我有

element = id.toLowerCase();
var hex = 0;
for (k=97; k<122; k++){
hex = k.toString(16); //gets me to hex
letter = element.replace(/[^\hex]/g, "")//remove everything but the current letter I'm looking for
return letter.length // the length of the resulting string is how many times the ltter came up
}

当然,当我这样做时,它会将十六进制解释为字母 h e x,而不是我想要的字母的十六进制代码。

最佳答案

不确定为什么要转换为十六进制,但您可以循环遍历字符串的字符并跟踪每个字符出现的次数以及用作散列的对象:

var element = id.toLowerCase();
var keys = {};

for(var i = 0, len = element.length; i<len; i++) {
if(keys[element.charAt(i)]) keys[element.charAt(i)]++;
else keys[element.charAt(i)] = 1;
}

您可以使用数组来做同样的事情,但哈希更快。

关于javascript - 用于使用 javascript 在循环中提取单独字母的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10286444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com