字符串是:“<FONT style="FONT-SIZE: 12pt">内容1</FONT><IMG alt="提示" src="1.jpg"><FONT style="FONT-SIZE: 10pt">内容2</FONT><FONT style="FONT-SIZE: 12pt">内容3</FONT>”   表达式这样:string p1 = "<FONT.*>.{1,}?</FONT>"  或者:string p1 = "<FONT.*>.*?</FONT>
            Regex re = new Regex(p1, RegexOptions.IgnoreCase);//正则表达式
            MatchCollection mc = re.Matches(value);这样匹配到是一整句。希望能匹配到:
<FONT style="FONT-SIZE: 12pt">内容1</FONT><FONT style="FONT-SIZE: 12pt">内容2</FONT><FONT style="FONT-SIZE: 12pt">内容3</FONT>得到内容1,内容2,和内容3的值。
谢谢。

解决方案 »

  1.   

    Regex reg = new Regex(@"(?is)(?<=<FONT style=""FONT-SIZE: 12pt"">).+?(?=</Font>)");
      

  2.   

    try...string p1 = "(?is)<FONT[^>]*>(.*?)</FONT>";
      

  3.   

                string test = "<FONT style=\"FONT-SIZE: 12pt\">内容1</FONT><IMG alt=\"提示\" src=\"1.jpg\"><FONT style=\"FONT-SIZE: 10pt\">内容2</FONT><FONT style=\"FONT-SIZE: 12pt\">内容3</FONT>";
                Regex reg = new Regex(@"(?is)<font[^>]*>(.*?)</font>");
                MatchCollection mc = reg.Matches(test);
                foreach (Match m in mc)
                {
                    richTextBox2.Text += m.Groups[1].Value + "\n";
                }