asp智能脏话过滤系统v1.0第1/2页

 更新时间:2024年07月01日 11:49:10   投稿:mdxy-dxy  
功能比较不错的脏话过滤系统,就是代码太长了,具体算法大家可以自己研究下

<%
'**********************************************************
'*智能脏话过滤系统v1.0       *    *
'*转载请保留版权信息,多谢                        *   拉   *
'*调用方法:sayy=ND_say_what(sayy),sayy为内容输入 *   图   *
'*程序作者:阮丁远,(网名:柏拉图的程序) 版权所有   *   的   *
'*qq:657697290                                   *   序   *
'*最后修改:20080609                              *   著   *
'*(struct,spring,,....net,www.jb51.net|强人工智能系统  2049年)还未开发基于分词数据库的形容词
,名词等归类的,和带自动优先级式分词,
'*(struct,spring,,....net,www.jb51.net|强人工智能系统  2049年)和xml多层式的字与字最大间隔设
置(精确到单个字与单个字的间隔,
'*(struct,spring,,....net,www.jb51.net|强人工智能系统  2049年)因为连续的单个字与单个字间可能
也有随机性空格) 及语义嵌套,递归式冗余纠错,和
'*(struct,spring,,....net,www.jb51.net|强人工智能系统  2049年)程序语义理解,人工神经元语义理
解的更高版本
'**********************************************************
function ND_say_what(sayyyyx)



'本代码使用说明:如 ivv=0,icc=0,zang_data(ivv,0,0)="
|kao",icc=icc+1,zang_data(ivv,icc,0)="他",zang_data(ivv,icc,1)=2,表示如果"
|kao"中的"操"字或"日"字或其他字 与 zang_data(ivv,icc,0)="他"中指定的"他"字相隔zang_data
(ivv,icc,1)=2指定的2个字的距离或小于2个字距离,就认为此语句为脏话,并自动过滤掉

'*的使用: zang_data(0,0,0)="",zang_data(0,1,0)="*"之类 表示只要存在""这些字 就过
滤掉 ,而不用考虑字符距离等 ,这与zang_data(0,0,0)="",zang_data(0,1,0)=.....不存在 的情
况 的效果等效

' 一个英文的长度为1,一个中文的长度也算为1

' 对于 "杀死"两字, 则认为 "杀"字 与 "死"字 相差0个字符,  "杀 死"两字中 也认为 "杀"字 与 "死"
字 相差0个字符,因为会自动忽略字与字间的空格


zang_len=999
zang_yufa_xiangguan_list_max=22
dim zang_data(999,22,2)


'初始化一切
for zang_lena=0 to zang_len-1
for zang_yufa_xiangguan_lena=0 to zang_yufa_xiangguan_list_max-1
zang_data(zang_lena,zang_yufa_xiangguan_lena,0)=""
zang_data(zang_lena,zang_yufa_xiangguan_lena,1)=2 '指定如果zang_data
(zang_lena,zang_yufa_xiangguan_lena,0)的字符串与其对应的后面的数组元素的字符串相隔几个长度或
相隔小于此指定的长度值的字符串时才认定为脏话
next
next

konggexx=" 
"&"$_kongge_$"&" "&"$_kongge_$"&"&nbsp;"&"$_kongge_$"&"<br>"&"$_kongge_$"&"<p>"&"$_kongge_$
"&"</p>"&"$_kongge_$"&","&"$_kongge_$"&"'"&"$_kongge_$"&"""&"$_kongge_$"&"="&"$_kongge_$"&"
="&"$_kongge_$"&"-"&"$_kongge_$"&"_"&"$_kongge_$"&"+"&"$_kongge_$"&"%"&"$_kongge_$"&"$"&"$_k
ongge_$"&"#"&"$_kongge_$"&"?"&"$_kongge_$"&"!"&"$_kongge_$"&"~"&"$_kongge_$"&"("&"$_kongge_$
"&")"&"$_kongge_$"&"<"&"$_kongge_$"&">"&"$_kongge_$"&"["&"$_kongge_$"&"]"&"$_kongge_$"&"{"&"
$_kongge_$"&"}"&"$_kongge_$"&":"&"$_kongge_$"&";"&"$_kongge_$"&"."&"$_kongge_$"&"/"&"$_kongg
e_$"&"\"&"$_kongge_$"&"^"&"$_kongge_$"&"*"&"$_kongge_$"&"@"&"$_kongge_$"&"&"&"$_kongge_$"&"|
" '指定所有空格性的字符,用$_kongge_$隔开,这里空格指定了英文空格和中文空格
heihack=" *** " '把脏话替换成什么





'======================================================
'脏话数据库v1.0-20080609,一切脏话的脏话数据库在下面:

ivv=0
icc=0
zang_data(ivv,0,0)="杀|sha|sa|" '如果  杀 和 死 字同时存在,且两字间相隔的字符数小于或
等于对应的zzang_data(aa,yy,1)指定的值,则认定此为脏话
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=0
icc=icc+1
zang_data(ivv,icc,0)="掉"
zang_data(ivv,icc,1)=0
icc=icc+1
zang_data(ivv,icc,0)="了"
zang_data(ivv,icc,1)=0

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)="把|ba"
icc=icc+1
zang_data(ivv,icc,0)="" '把......  杀 ,相隔5个或小于5个字符串
zang_data(ivv,icc,1)=5

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)="去|qu"
icc=icc+1
zang_data(ivv,icc,0)="" '把....拉出 去 杀或 去 杀 了 ... ,相隔4个或小于4个字符串
zang_data(ivv,icc,1)=4

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="你" ' ,.....
zang_data(ivv,icc,1)=0
icc=icc+1
zang_data(ivv,icc,0)="ma|" '可能为  ,,,... 故其对应的zang_data(aa,yy,1)
指定为2
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="ni"
zang_data(ivv,icc,1)=0
icc=icc+1
zang_data(ivv,icc,0)="她" '可能为 故其对应的zang_data(aa,yy,1)指定为2
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="他" ' 故其对应的zang_data(aa,yy,1)指定为2
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="它" '可能为  故其对应的zang_data(aa,yy,1)指定为2
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="ta" '可能为 故其对应的zang_data(aa,yy,1)指定为2
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="娘|niang" 
zang_data(ivv,icc,1)=2
icc=icc+1
zang_data(ivv,icc,0)="b|"  '
zang_data(ivv,icc,1)=2
'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)="我|wo"
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=0



'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="*"
zang_data(ivv,icc,1)=0

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="*"
zang_data(ivv,icc,1)=0

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)="去"
icc=icc+1
zang_data(ivv,icc,0)="*"
zang_data(ivv,icc,1)=0

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=1   '



'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=" 
zang_data(ivv,icc,1)=0   

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=1   

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=1   

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=2  
'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="工作者"
zang_data(ivv,icc,1)=20  

'-----------------------------
ivv=ivv+1
icc=0
zang_data(ivv,0,0)="日本"
icc=icc+1
zang_data(ivv,icc,0)="*"
zang_data(ivv,icc,1)=0 
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=3 
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)="找"
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=2 
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)="晚上"
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=12
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="b"
zang_data(ivv,icc,1)=0
'----------------------------- 


ivv=ivv+1
icc=0
zang_data(ivv,0,0)="s"
icc=icc+1
zang_data(ivv,icc,0)="b"
zang_data(ivv,icc,1)=0
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)="杀"
zang_data(ivv,icc,1)=15
'----------------------------- 


ivv=ivv+1
icc=0
zang_data(ivv,0,0)="人"
icc=icc+1
zang_data(ivv,icc,0)="渣"
zang_data(ivv,icc,1)=0
'----------------------------- 


ivv=ivv+1
icc=0
zang_data(ivv,0,0)="垃"
icc=icc+1
zang_data(ivv,icc,0)="圾"
zang_data(ivv,icc,1)=0
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=0
'----------------------------- 

ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=0
'----------------------------- 


ivv=ivv+1
icc=0
zang_data(ivv,0,0)=""
icc=icc+1
zang_data(ivv,icc,0)=""
zang_data(ivv,icc,1)=0
'----------------------------- 

相关文章

最新评论