四个重复字母检查javascript,垃圾邮件检测
有没有一种“更聪明”的方法可以做到这一点?这是可行的,但我想这与for循环有关,如果我检查20个重复字符呢 如果禁用javascript会发生什么 有没有更简单的方法来检查“感官”帖子而不是说aldjfalkfja;lfjaklfjlkfj在不存储单词库并将字符串与这些单词进行比较的情况下,如何过滤掉这些单词四个重复字母检查javascript,垃圾邮件检测,javascript,Javascript,有没有一种“更聪明”的方法可以做到这一点?这是可行的,但我想这与for循环有关,如果我检查20个重复字符呢 如果禁用javascript会发生什么 有没有更简单的方法来检查“感官”帖子而不是说aldjfalkfja;lfjaklfjlkfj在不存储单词库并将字符串与这些单词进行比较的情况下,如何过滤掉这些单词 function counter(){ this.value = 0; } var count = new counter(); function updatecount(fnc){
function counter(){
this.value = 0;
}
var count = new counter();
function updatecount(fnc){
fnc.value = count.value + 1;
}
function charbank1(){
this.value = "";
}
var cb1 = new charbank1();
function insertchar1(fnc){
fnc.value = cb1.value + String.fromCharCode(keynum);
}
function charbank2(){
this.value = "";
}
var cb2 = new charbank2();
function insertchar2(fnc){
fnc.value = cb2.value + String.fromCharCode(keynum);
}
function charbank3(){
this.value = "";
}
var cb3 = new charbank3();
function insertchar3(fnc){
fnc.value = cb3.value + String.fromCharCode(keynum);
}
function charbank4(){
this.value = "";
}
var cb4 = new charbank4();
function insertchar1(fnc){
fnc.value = cb4.value + String.fromCharCode(keynum);
}
function repeatingcharcheck(){
if(count.value < 4){
if(count.value == 1){
insertchar1(cb1);
}
if(count.value == 2){
insertchar2(cb2);
}
if(count.value == 3){
insertchar3(cb3);
}
if(count.value == 4){
insertchar4(cb4);
}
}else{
if(cb1.value == cb2.value == cb3.value == cb4.value){
alert('four letters in a row is not allowed');
window.location.replace('somewhere.com');
}
}
}
函数计数器(){
该值=0;
}
var count=新计数器();
函数更新计数(fnc){
fnc.value=count.value+1;
}
函数charbank1(){
此值为“”;
}
var cb1=新的charbank1();
函数insertchar1(fnc){
fnc.value=cb1.value+String.fromCharCode(keynum);
}
函数charbank2(){
此值为“”;
}
var cb2=新的charbank2();
函数insertchar2(fnc){
fnc.value=cb2.value+String.fromCharCode(keynum);
}
函数charbank3(){
此值为“”;
}
var cb3=新的charbank3();
函数insertchar3(fnc){
fnc.value=cb3.value+String.fromCharCode(keynum);
}
函数charbank4(){
此值为“”;
}
var cb4=新的charbank4();
函数insertchar1(fnc){
fnc.value=cb4.value+String.fromCharCode(keynum);
}
函数repeatingcharcheck(){
如果(计数值<4){
如果(count.value==1){
insertchar1(cb1);
}
如果(count.value==2){
insertchar2(cb2);
}
如果(count.value==3){
insertchar3(cb3);
}
如果(count.value==4){
insertchar4(cb4);
}
}否则{
if(cb1.value==cb2.value==cb3.value==cb4.value){
警报(“不允许一行四个字母”);
window.location.replace('somewhere.com');
}
}
}
您可以(也可能应该)使用正则表达式。合法文本中肯定会出现一行四个字母,如果没有四个字母,您的算法将无法捕获垃圾邮件。取而代之的是,计算一个“垃圾邮件分数”,该分数考虑了大小写和字母n-gram。