如果字符串中存在非法字符如: ~!@#$%^&*()+=|{}':;',\用正则表达式替换掉这些非法字符?求C#代码~!
解决方案 »
- 请问.net如何采集指定页面指定区间的内容呢?
- winform右键菜单问题。
- 做跨页传递时,一个目标页面多个源页面
- C#编译时,报错,不知道如何解决,求教?
- where should i start to learn crystal report?
- 请教一个在C#中运行网络邻居命令行的问题
- 在线等:如何让最大化的窗体能恢复到原来位置和密码文本框如何控制输入字符?
- 怎样在DataGrid中分页显示10条记录为一页
- 为什么我在修改word文字型窗体域时其标签会消失(有点难哦)
- 请问用WebClient时,先通过了验证(Post),可是访问别的网页是,服务器端不能读取到cookie还是提示登陆
- Out of Memory
- Dagtagridview的问题
/// 检查是否含有非法字符
/// </summary>
/// <param name="str">要检查的字符串</param>
/// <returns></returns>
public static bool ChkBadChar(string str)
{
bool result = false;
if (string.IsNullOrEmpty(str))
return result;
string strBadChar, tempChar;
string[] arrBadChar;
strBadChar = "@@,+,',--,%,^,&,?,(,),<,>,[,],{,},/,\\,;,:,\",\"\"";
arrBadChar = SplitString(strBadChar, ",");
tempChar = str;
for (int i = 0; i < arrBadChar.Length; i++)
{
if (tempChar.IndexOf(arrBadChar[i]) >= 0)
result = true;
}
return result;
} /// <summary>
/// 过滤非法字符
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string ReplaceBadChar(string str)
{
if (string.IsNullOrEmpty(str))
return "";
string strBadChar, tempChar;
string[] arrBadChar;
strBadChar = "@@,+,',--,%,^,&,?,(,),<,>,[,],{,},/,\\,;,:,\",\"\"";
arrBadChar = SplitString(strBadChar, ",");
tempChar = str;
for (int i = 0; i < arrBadChar.Length; i++)
{
if (arrBadChar[i].Length > 0)
tempChar = tempChar.Replace(arrBadChar[i], "");
}
return tempChar;
}
/// <summary>
/// 替换sql语句中的有问题符号
/// </summary>
public static string ReplaceBadSQL(string str)
{
string str2 = "";
if (string.IsNullOrEmpty(str))
{
return "";
}
string str1 = str;
string[] strArray = new string[] { "'", "--" };
StringBuilder builder = new StringBuilder(str1);
for (int i = 0; i < strArray.Length; i++)
{
str2 = builder.Replace(strArray[i], "").ToString();
}
return builder.Replace("@@", "@").ToString();
}
public string CheckSql(string str)
{
string s=string.Empty ;
if (str==null)
{
s = string.Empty ;
}
else
{
s = str.Replace("'","").Replace("*","").Replace("select","")
.Replace("where","").Replace(";","").Replace("(","").Replace(")","").Replace("drop","").Replace("DROP","").Replace("and","").Replace("or","").Replace("delete","").Replace("asc","").Replace("<","").Replace(">","").Replace("=","").Replace(";","").Replace("&","").Replace("*","").Replace(" ","");
}
return s;
}
string a = @"~!1234@#dfsf$%^sdff&sdfdf*(4kjg)+=|{}':;',\";
a = Regex.Replace(a, @"[~!@#$%\^&*()+=|{}':;',\\]", "");
{
string strBadChar = "@@,+,',--,%,^,&,?,(,),<,>,[,],{,},/,\\,;,:,\",\"\"";
if (string.IsNullOrEmpty(str))
{
return str;
}
else
{
foreach(String s in strBadChar )
str=str.Replace(s,"");
}
return str;
}
Console.WriteLine( Regex.Replace(a, @"[^\w\d\s]", ""));//不替换空格
Console.WriteLine(Regex.Replace(a,@"[\W]",""));//空格也替换