[attachimg]859[/attachimg]过滤这个字符串的正则,中间的字符数字可以随意变化

解决方案 »

  1.   

    我也刚学了一点正则,看看对你有没有帮助吧。我没有测试:因为[attachimg]和[/attachimg]是不变的,所以用括号括起来,中间的部分可能是任意的东西,而在正则中,\s匹配任何一下空空字符,而\W匹配任何一下非空的,中间还要随意,那么几者结合起来就是:
    ([attachimg])[\s\W]*([/attachimg])
    祝你好运。
      

  2.   

    (?<=\[attachimg\])(\w*\d*)*(?=\[\/attachimg\])
      

  3.   

    (?<=\[attachimg\])(\w*\d*)*(?=\[\/attachimg\])
      

  4.   

    网上搜一搜很多的了
    /**   
    * 校验所有输入域是否含有特殊符号   
    * 所要过滤的符号写入正则表达式中,注意,一些符号要用'\'转义.     
    * 试例:   
    * if(checkAllTextValid(document.forms[0]))   
    java源动力,java开源社区,http://www.web-java.com
    *  alert("表单中所有文本框通过校验!");   
    */   
    function checkAllTextValid(form)    
    {    
        //记录不含引号的文本框数量    
    var resultTag = 0;    
        //记录所有text文本框数量    
        var flag = 0;    
    for(var i = 0; i < form.elements.length; i ++)    
    {    
      if(form.elements[i].type=="text")    
      {    
                flag = flag + 1;    
       //此处填写所要过滤的特殊符号    
       //注意:修改####处的字符,其它部分不许修改.    
       //if(/^[^####]*$/.test(form.elements[i].value))     
       
       if(/^[^\|"'<>]*$/.test(form.elements[i].value))   
                    resultTag = resultTag+1;   
       else   
        form.elements[i].select();   
      }   
    }   
      
        /**   
         * 如果含引号的文本框等于全部文本框的值,则校验通过   
         */   
    if(resultTag == flag)   
      return true;   
    else   
    {   
      alert("文本框中不能含有\n\n 1 单引号: ' \n 2 双引号: \" \n 3 竖  杠: | \n 4 尖角号: < > \n\n请检查输入!");    
      return false;    
    }    
    }
     
    网址:http://www.web-java.com/article/09/211.html
      

  5.   

    Regex.Replace(input, "\[attachimg\]\d+\[/attachimg\]", "");
      

  6.   

    没有写对的啊。。string result=Regex.Replace("你的字符串",@"\[attachimg\][\s\S]*\[/attachimg\] ","");
      

  7.   

    string s="[attachimg]859[/attachimg]"
    Regex.Replace(s, "[attachimg][\\s\\S]*[/attachimg]", "");
      

  8.   

    如果中间一定是数字,那么:string result=Regex.Replace("你的字符串",@"\[attachimg\]\d*\[/attachimg\] ","");如果不一定,那么:string result=Regex.Replace("你的字符串",@"\[attachimg\]((?!\[/?attachimg\])[\s\S])*\[/attachimg\] ","");