javascript过滤关键词不区分大小写字母的问题

JavaScript020

javascript过滤关键词不区分大小写字母的问题,第1张

/*

* 通用过滤函数,参数str为需要处理的字符串,ref为参照规则

*/

function filter(str,ref){

for(var i=0i<ref.lengthi++){

str=str.replace(new RegExp(ref[i][0],"gi"),ref[i][1])

}

return str

}

/*使用方法*/

var temp="dadfa DALeweceqrcqfgdgdagaf"

temp=filter(temp,[["dalai","da。lai"],["falun","fa。lun"],["xxx","yyy"]])

/*使用示例,将下面代码保存为网页*/

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title>无标题文档</title>

<script type="text/javascript">

function $(id){return document.getElementById(id)}

/*

* 通用过滤函数,参数str为需要处理的字符串,ref为参照规则

*/

function filter(str,ref){

for(var i=0i<ref.lengthi++){

str=str.replace(new RegExp(ref[i][0],"gi"),ref[i][1])

}

return str

}

function html_f(){

var ref = new Array()

ref.push(["html","HTML文档"])

ref.push(["head","头部"])

ref.push(["meta","媒体"])

ref.push(["title","标题"])

ref.push(["link","链接"])

ref.push(["script","脚本"])

ref.push(["body","身体"])

$("output").innerText=filter($("input").innerText,ref)

}

</script>

</head>

<body>

<textarea id="input" style="width:400pxheight:500px"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>javascript过滤关键词不区分大小写字母的问题_百度知道 </title>

<link rel="alternate" type="application/rss+xml" title="“javascript过滤关键词不区分大小写字母的问题”的最新回答(RSS 2.0)" href="http://zhidao.baidu.com/q?ct=20&qid=144059871&pn=65535&rn=25&tn=rssqb">

<link href="/ikqb.css" rel="stylesheet" type="text/css">

<script type="text/javascript" src="/userlogin.js?213"></script>

</head>

<body></textarea>

<input type="button" value="过滤" onclick="html_f()"/>

<textarea id="output" style="width:400pxheight:500px"></textarea>

<br/>

</body>

</html>

屏蔽一般这个情况有两种原因(我碰到过的)

这里需要一个软件procexp,百度自己搜索,用来查看进程的软件,一般网吧不会屏蔽这个

下面来说说2种情况

1.在C盘里有一个叫IE的文件夹,用搜索文件可搜到,这时先打开procexp,看一下有几个粉红色的进程,不用多说删除,然后删除IE文件夹搞定

2.电脑里没有这个IE文件夹的,采用的是一种软件屏蔽,软件进程需要用procexp查看,名字叫做smcc.exe,叫做网吧管理**,记不太清楚了,呈粉红色,并非系统进程,直接删除。

一般利用PROCEXP就可以解决了,至于网吧禁止的功能可以利用其他破解软件来搞定,这里就不引用了。

给你一个我用的JS例子吧:

<script>

//过滤关键词,将关键词转变成正则形式

function filterV(v){

return v.replace(/([\u4e00-\u9fa5])([\u4e00-\u9fa5])/g,"$1\\s+$2")

}

var v='人性'//要屏蔽的词

var s='我是一个大好人 性格非常好'//字符串

var r=new RegExp(filterV(v),"g")//将关键词变为正则

alert(s.replace(r,"*"))//关键词过滤:我是一个大好*格非常好

</script>