简单的字符串过滤实现

    如何才能将用户输入的一些非法关键字过滤掉呢?在.net的框架下有一个叫Regex的类是专门负责利用正则表达式处理字串的。它的名字空间是using System.Text.RegularExpressions。Regex有一个成员方法Replace,可以将源字符串中,符合正在表达式要求的字符用另外的字符替代。下面就给出一个简单的例子。

static void Main(string[] args)
  {
  string source = "我妈妈的爸爸地好心得";  //源字串
  string pattern=@"[(的|地|得)]";          //查询的正则表达式。这里的意思是“的、得、地”这三个词
  Regex rgx=new Regex(pattern);            //构造Regex的对象
  string result = rgx.Replace(source, "替换");//替换操作。将结果放到result去。
  Console.WriteLine(result);
  }

上述的程序就可以将一句话中的三个助词“的、得、地”变成“替换”。

只要你将敏感字眼组合成正在表达式,那么用户输入的字串中所有的非法词汇就被过滤掉了。建议用一个txt文件记录这些敏感字眼。而文件的内容格式就是“XX|YYY|ZZZ|XYZ”。只要利用StreamReader就可以将内容读进来,方便组合成正则表达式。

你可能感兴趣的:(.net开发)