一组字符串例如:
“我是中华人民共和国公民”
这句话中我会有一个判断如果当中包含公民两个字,就要把“公民”加上颜色显示在Label或者TextBox里显示在Winform窗体上.不知道如何实现这个功能,请大家支援一下.

解决方案 »

  1.   


    void Main()
    {
     string str="我是中华人民共和国公民";
     string s="公民";
     str=str.Replace(s,"[color=#FF0000]"+s+"
    ");
     Console.WriteLine(str);
     }
    [/color]
    我是中华人民共和国公民
      

  2.   


    void Main()
    {
     string str="我是中华人民共和国公民";
     string s="公民";
     str=str.Replace(s,"[color=#FF0000]"+s+"");
     Console.WriteLine(str);
     }我是中华人民共和国公民
      

  3.   


    //请无视1楼和2楼
    void Main()
    {
     string str="我是中华人民共和国公民";
     string s="公民";
     str=str.Replace(s,""+s+"");
     Console.WriteLine(str);
    }我是中华人民共和国公民
      

  4.   

    我是要把这一组字符串放到Label上显示的话,3楼您的代码是不是就实现不了。我操作的步骤是,首先 得到 “我是中华人民共和国公民”长度然后-公民的长度=公民所在这个字符串的位置上了,然后将得到的位置添加上红色标识。代码如下。 int idx1 = lbTxt.Text.Length - txt.Length(txt是一个包含性质的一个字符串例如您写的s变量那样);
     int idx2 = txt.Length;
     string str4 = lbTxt.Text.Substring(idx1, idx2);//这一句就是得到了包含字符串所在字符串的位置上.
    上面获取到了包含字符串的位置后,将整个字符串的文本赋予给label.text;
    str4这个变量相当于“我是中华人民共和国<公民>”话中的公民位置。就把这个位置画上红色。