比如:字符串:a34nnnnna45kkkkkka45lllllla45
我想查找a34和a45之间的字符,但要求返回的是和第一个a45之间的字符,也就是“nnnnn”,这种正则应该怎么写?谢谢了先!!

解决方案 »

  1.   

    字符串:a34nnnnna45kkkkkka45lllllla45
    我想查找a34和a45之间的字符,但要求返回的是和第一个a45之间的字符,也就是“nnnnn”,这种正则应该怎么写?谢谢了先!!回答:string b="a34nnnnna45kkkkkka45lllllla45";
    Regex a=new Regex(@"(^.*a34{1})|(a45{1}.*$)");
    string c=a.Replace(b,"");
    Response.Write(c);
      

  2.   

    string strReg=@"(a34)(.)(.*?)(a45)";
    ArrayList _returnList=new ArrayList();
    string strMatch="a34nnnnna45kkkkkka45lllllla45";
    MatchCollection _mc=Regex.Matches(strMatch,strReg,RegexOptions.Singleline);
    foreach(Match _current in _mc)
    {
      string strValue=+_current.Groups[2].Value;
      _returnList.Add(strValue));
    }
      

  3.   


    foreach( Match m = new Regex( @"a34(?<str>.+?)(?=a45)" ).Match( string ) ; m.Success ;m=m.NextMatch() )
    {
       string str = m.Groups[ "str" ].Value;
    }