❶ 如何过滤掉字符串中的非法字符
过滤来非法字符:自
/**
* 替换xml特殊字符,
* 过滤非法字符 HJX
* @param s
* @return
*/
public static String format(String s){
String reg = "[//x00-//x08//x0b-//x0c//x0e-//x1f]";//过滤掉非法字符
if ( s == null )
return "";
else{
s=s.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll("/"",""").replaceAll(reg,"");;
return s;
}
}
❷ 几种过滤URL和FORM中非法字符的方法
ASP过滤URL和FORM中非法字符第一种:<%'检查URL输入限制非法字符url=LCase(request.querystring())ip=request.ServerVariables( REMOTE_ADDR)pos1=instr(url,%)pos2=instr(url,')pos3=instr(url,;)pos4=instr(url,where)pos5=instr(url,select)pos6=instr(url,chr)pos7=instr(url,/)pos8=Instr(url,and)ifpos1<0orpos2<0orpos3<0orpos4<0orpos5<0orpos6<0orpos7<0orpos8<0thenresponse.Write 你尝试使用危险字符,系统已经对此做了记录如下您的IP:&ip&操作时间:&date()& response.End()endif'检查表单输入,限制非法字符'使用request.QueryString来索引request的所有资料,作为SQL检查之用'如出现非法字符则自动停止输出fori_request=1torequest.form.Countifinstr(request.form(i_request),')<0orinstr(request.form(i_request),;)<0thenResponse.Write <scriptlanguage='javascript'history.back();alert('你尝试使用危险字符,系统已经对此做了记录如下您的IP:&ip&操作时间:&date()& ');</script response.End()endifnext%第二种:<%OnErrorResumeNextdimsql_injdata,sql_inj,sql_get,sql_data SQL_injdata='|oxSQL_inj=split(SQL_Injdata,|)'定义过滤字符,可以自己添加,以|分隔''|;|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare'对post方式过滤IfRequest.Form<ThenForEachSql_PostInRequest.FormForSQL_Data=0ToUbound(SQL_inj)ifinstr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))0ThenResponse.redirectss'出错时转向页面 Response.endendifnextnextendif'对GET方式过滤IfRequest.QueryString<ThenForEachSQL_GetInRequest.QueryStringForSQL_Data=0ToUbound(SQL_inj)ifinstr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))0ThenResponse.redirectss'出错时转向页面 Response.endendifnextNextEndIf%第三种:functioncheckstr(str)'过滤非法字符函数dimtempstrifstr=thenexitfunctiontempstr=replace(str, chr(34),)'tempstr=replace(tempstr, chr(39),)''tempstr=replace(tempstr, chr(60),)'<tempstr=replace(tempstr, chr(62),)'tempstr=replace(tempstr, chr(37),)'%tempstr=replace(tempstr, chr(38),)'&tempstr=replace(tempstr, chr(40),)'(tempstr=replace(tempstr, chr(41),)')tempstr=replace(tempstr, chr(59),)';tempstr=replace(tempstr, chr(43),)'+tempstr=replace(tempstr, chr(45),)'-tempstr=replace(tempstr, chr(91),)'[tempstr=replace(tempstr, chr(93),)']tempstr=replace(tempstr, chr(123),)'{tempstr=replace(tempstr, chr(125),)'}checkstr=tempstrendfunction第四种:'================================================'函数名:IsValidStr'作用:判断字符串中是否含有非法字符'参数:str----原字符串'返回值:False‚True-----布尔值'================================================PublicFunctionIsValidStr(ByValstr)IsValidStr=(str)ThenExitFunctionIfTrim(str)=‚iForbidStr= and|chr|:|=|%|&|$|#|@|+|-|*|/|/|<||;|‚|^|&Chr(32)&|&Chr(34)&|&Chr(39)&|&Chr(9)ForbidStr=Split(ForbidStr‚|)Fori=0ToUBound(ForbidStr)IfInStr(1‚str‚ForbidStr(i)‚1)0ThenIsValidStr==TrueEndFunctionASP.(Stringpara)//过滤非法字符{intflag=0;flag+=para.indexOf(')+1;flag+=para.indexOf(;)+1;flag+=para.indexOf(1=1)+1;flag+=para.indexOf(|)+1;flag+=para.indexOf(<)+1;flag+=para.indexOf()+1;if(flag!=0){System. out 提交了非法字符!!!);returnfalse;}returntrue;}
❸ 简单的正则表达式问题,如何过滤指定的字符
String.replace(正则表达式,"")
replace是string类型内置的替换方法,第一个参数可以是正则表达式,第二个参数是想内要替换成的文本,正则中容可以使用/g来表示替换所有匹配的文本,不使用则代表只替换匹配到的第一个字符对象,将第二个参数设为空字符串便可达到过滤的效果。
具体正则需要你自己去了解关于正则的知识了,祝你好运。
❹ 字符串中如何过滤HTML标签字符
下面是asp中的方法,你可以改造成.net的
Function FilterHTML(strToFilter)
Dim strTemp
strTemp = strToFilter
strTemp=replace(strTemp,"""","")
strTemp=replace(strTemp," ","")
strTemp=replace(strTemp," ","")
strTemp=replace(strTemp," ","")
strTemp=replace(strTemp,"&","")
Dim n,m '定义三个变量
n = inStr(strTemp,"<") '找到第一个"<"所在的位置
m = inStr(strTemp,">") '找到第一个">"所在的位置
Do while n > 0 and n < m '如果n>0则说明找到了一个"<",如果n<m则说明"<"在">"的左边,则"<"和">"之间的字符串为HTML代码,需要过滤掉
strTemp = Left(strTemp,n-1) & Mid(strTemp,m+1) '取"<"左边的字符串和">"右边的字符串并将他们连接在一起
n = inStr(strTemp,"<") '找到剩余字符串中第一个"<"所在的位置
m = inStr(strTemp,">") '找到剩余字符串中第一个">"所在的位置
Loop '循环
FilterHTML = strTemp
End Function
❺ 请问怎么设置过滤一些字符和网站
这些是无没过滤掉的,在那些字符上面都设置了链接了,一点就会打开的!! 像那样的你最好是别用鼠标点它就行了!!
❻ Filter中怎样过滤字符串字段
package test;import java.util.HashMap;/*** maxLength-需要过滤最长字符串的长度* filterStrs-需要过滤字符串的集合,key为需要过滤字符串,value为过滤成的字符串如"*"* @author Administrator**/public class Test{ private int maxLength; ...
❼ excel里怎样过滤掉除汉字和数字外的所有符号
选中A列,在编辑里 将所替换的 标点、符号依次替换为空,即可。
================================================
打开excle 快捷键 Alt + F11 将下面代码复制到模块 运行
注意要替换的标点自己加进去
测试已经通过
Sub Del()
Dim reg As Object '定义reg为一个对象
Dim arr '定义一个动态数组
Dim i As Long, j As Long '分别定义i,j为长整型
i = Range("A65536").End(xlUp).Row '把A列非空的最后行数赋予给i
Columns("B").ClearContents '清空B列
arr = Range("A1:A" & i) '把A列的数据赋予给数组arr
Set reg = CreateObject("VBscript.RegExp") '调用正则表达式
With reg '定义表达式
.Global = True '匹配所有搜索项
.ignorecase = True '不区分大小写
.Pattern = "[。‘;【】:“》,]" '正则表达式(所有标点)"
End With
For j = 1 To i '循环该区域
Range("B" & j) = reg.Replace(arr(j, 1), "") '进行根据模板替换字符串为空值
Next
End Sub
上面是自己做的
============================================================
找一个更好的的,更完美
Sub cc()
Dim i%, arr
arr = Sheet1.[a1].CurrentRegion
With CreateObject("VBSCRIPT.REGEXP")
For i = 1 To UBound(arr)
.Global = True
'.Pattern = "[^0-9A-z\u4e00-\u9fa5]"
.Pattern = "[^0-9A-Za-z一-龥]"
arr(i, 1) = .Replace(arr(i, 1), "")
Next
End With
Sheet1.[d1].Resize(UBound(arr)) = arr
End Sub
❽ 怎么过滤掉一个String中的某几个字符
public static void main(String[] args) {
String str = "sssswwwwssss";
str = str.replaceAll("wwww", "");//"wwww"是指定过滤的字符串
System.out.println(str);
}
还有其他方法,很多种,我只写了一种
希望能帮到你!
❾ JAVA中如何过滤字符串里面特殊字符
class test
{
public static void main(String []args)
{
String a = "1111-22-33 13:15:46",b=new String();
int i,j,t;
for(i=0;i<a.length();i++)
if(a.charAt(i)!='-' && a.charAt(i)!=':' && a.charAt(i)!=' ')
b=b+a.charAt(i);
System.out.println(b);
}
}
❿ 怎么过滤所有字母和特殊字符,只取文本
^^|^||String str = "*(^YUIGHUGU^^&*()*6哈哈89324328uewh~!@#$%^&*()_+,./<>?;':[]\\{}|-=";//要过滤的字符串
str = str.replaceAll("[\\pP|~|$|^|<|>|\\||版\\+|=]*", "");
System.out.println(str);
输出结果权:YUIGHUGU6哈哈89324328uewh