从数据库提取的数据显示在页面的时候“文字&rdquo→文字&rarr会出现这样子,老是过滤不掉.
现在想把包含&的字符都过滤掉,要怎么过滤,正则表达式一蹋糊涂

解决方案 »

  1.   

    我查到→是→这个特殊符号转义后的的内容,你提取时如果知道原义,可以Replace()一下,如你不想要这个,只要保留想要的内容,说明一下你想要保留的是什么样的内容,比如说都是中文还是包括些什么,给出需求,可以用正则提取出来的
      

  2.   

    或者你先用这个正则处理一下试试,按道理,这类转义的字符都是以&开头,以;结束的,楼主所给的实例每一行最后应该还有个;才对的
    string resultStr = Regex.Replace(yourStr, @"&(.*?);","" , RegexOptions.IgnoreCase);
      

  3.   

    我想直接把它过滤好了,→文字&rarr   只显示"文字"两个字.谢谢lxcnn(过客)
      

  4.   

    楼主再看一下你页面显示的内容,这类字符串是不是都以&开始,以;结束,按道理应该是这样的,如果是,用我上面给的正则处理即可,如果不是,多给出一些实例,或是具体说明一下要保留的内容,或者要过滤掉的内容都具有哪些特点,或是符合什么样的条件或规律
      

  5.   

    string resultStr = Regex.Replace(yourStr, @"&([^/s]+?);","" , RegexOptions.IgnoreCase);
      

  6.   

    string a="“文字&rdquo";
    a=Regex.Match(a,"(?<=;).*?(?=&)").Value;
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    个人认为,替换字符串的这种方法不治本
    &ldquo;拿这个来说是有特殊意义的(我记得是个引号),很有可能是编码的问题
      

  7.   

    我用的是FCKeditor编辑器,插入数据库的时候就会出现这种情况,想把它过滤掉