aaaaaaaaaaaaaaaaa<Word id='1'>xixi</Word>aaaaaaaaaaaa<Word id='2'>haha</Word>aaaaaaaaaaa怎么匹配全部找到<Word id='数字'>任意非“<Word”的字符串</Word>谢谢。

解决方案 »

  1.   


    就是我要找到所有的<Word id='*'>*</Word>
      

  2.   

    (?i)<Word id='\d+'>.*?</word>
      

  3.   

    (?is)<word\sid='\d*'>[^<].*</word>
      

  4.   


    void Main()
    {
    string html=@"aaaaaaaaaaaaaaaa<Word id='1'>xixi</Word>aaaaaaaaaaaa<Word id='2'>haha</Word>aaaaaaaaaaa";
     
    foreach(Match m in Regex.Matches(html,@"(?is)<word\sid='\d*'>[^<].*</word>"))
    {
            Console.WriteLine(m.Value);
    }
     
    }/*
    结果:<Word id='1'>xixi</Word>aaaaaaaaaaaa<Word id='2'>haha</Word>
    */
      

  5.   

    (?is)<Word\s+id='\d+'>.*?</Word>
    //or
    (?is)<Word\s+id='\d+'>(?:(?!</?word).)*</Word>
      

  6.   

    修正:(?i)<Word id='\d+'>((?!<word).)*?</word>
    找到<Word id='数字'>任意非“<Word”的字符串</Word>匹配:<Word id='1'>xiw<xi</Word>
    不匹配:<Word id='2'>ha<Wordha</Word>
      

  7.   

    (?is)<Word\s+id='\d+'>.*?</Word>
    //or
    (?is)<Word\s+id='\d+'>(?:(?!</?word).)*</Word>
      

  8.   

    (?is)<Word\s+id='\d+'>.*?</Word>
    //or
    (?is)<Word\s+id='\d+'>(?:(?!</?word).)*</Word>