string pattern1=@"<b>[\u4e00-\u9fa5]*</b><br>";
match1=Regex.Matches(line,pattern1,RegexOptions.IgnoreCase);
foreach(Match n in match1)
{
listBox2.Text+=n.ToString();
}
为什么我显示的是'<b></b><br>',中间的汉字怎么没有了?

解决方案 »

  1.   

    1.如果定义
    static private System.Windows.Forms.TextBox listBox2;如果我用
    listBox2+="aa";
    listBox2+="bb";为什么显示的是bbaa而不是aabb。
    ----------------------------------
    不知道这行代码的意思,控件是listbox还是textbox?这两个控件都没有string的隐式转换啊??*******************************************
    2 正则表达式"<b>[/S]+</b><br>"能否表达下面的信息??
    <b>晴</b><br>
    <b>小雪</b><br>
    <b>大雨加冰雹</b><br>
    ____________________________-
    没有表述清楚,估计你是想匹配这三行字符串,[/S]+表示匹配一个或多个/或者大写字母S,需要改一改
    <b>\S+</b><br>
    \S+匹配非空([^ \f\n\r\t\v])的字符,建议改为<b>.+</b><br>
    需要分情况:
    1.当你的字符串是有规则时,每一行都是
    <b>...</b><br>
    的形式,那么当正则选项不是Multiline而不是Singleline时,可以匹配
    2.如果所有的这种形式可以在一行字符串中,或者可以是这样的形式
    <b>阿瑟大
              
         阿瑟大撒</b><br>
    上面的匹配规则就不行了,改为
    <b>.+?</b><br>,RegexOptions设为Singleline
      

  2.   

    OneDotRed(武装到眼神):
    sorry是我写错了,只是自己举个简单例子,不小心弄错了,嘿嘿,应该是这样
    listBox2.Text+=m.ToString();
    listBox2.Text+=n.ToString();