我正在编写一个脚本来创建用于在线作者识别的指标。我在文献中遇到的一件事是计算每个字母的频率(多少个 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
}
但当然,当我这样做时,它将十六进制解释为字母十六进制,而不是我想要的字母的十六进制代码。