using System.Text.RegularExpressions;        protected void Button2_Click(object sender, EventArgs e)
        {
            string xx = this.TextBox1.Text.Trim();
            Regex.Replace("xx", "%Code% ", "4", RegexOptions.IgnoreCase);
            Regex.Replace("xx", "%Rname%", "3", RegexOptions.IgnoreCase);
            Regex.Replace("xx", "%Linkman%", "2", RegexOptions.IgnoreCase);
            Regex.Replace("xx", "%Email%", "1", RegexOptions.IgnoreCase);
            Response.Write(xx);
        }

解决方案 »

  1.   

    。。什么意思?
    XX没有被重新赋值啊,XX的值又没有发生改变肯定没有效果三!
      

  2.   

    不是啊
       开始的时候this.TextBox1.Text="个人/企业代码 %Code%       个人真实姓名/企业名称  %Rname%       联系人 %Linkman%       邮箱  %Email%          日期  %Date%";当点击Button2的时候就
    string email = "select CompanyEmail,CompanyCode,Company,CompanyLinkman from Ex_Company where CompanyID='" + str[i].ToString() + "'";
                        SqlCommand cmdemail = new SqlCommand(email, conn);
                        SqlDataReader reader = cmdemail.ExecuteReader();
                        while (reader.Read())
                        {
                            toEmail = reader["CompanyEmail"].ToString();
                            Regex.Replace("mailBody", "%Code% ",reader["CompanyCode"].ToString());
                            Regex.Replace("mailBody", "%Rname%", reader["Company"].ToString());  
                            Regex.Replace("mailBody", "%Linkman%",reader["CompanyLinkman"].ToString());
                            Regex.Replace("mailBody", "%Email%", reader["CompanyEmail"].ToString());
                            mail.To.Add(toEmail);
                            mail.Body = mailBody;
                         
                        } reader.Close();
    我这样也不行吗?
      

  3.   

    我记得 Regex.Replace是有返回值的。返回值就是替换后的字符串。
    我觉得你的代码的作用就像下面这个一样
    string a="111";
    a.Replace("111","");
    Response.Write(a);
    这个a的值没有变
      

  4.   

    恩   如果这样  string xa = xx.Replace("%Code%", "4");
    Response.Write(xa); 
    就行啊
        但关键是这样只能换一个啊
    如果要是像那有多个要替换的呢???要怎么做才好呢....
      

  5.   

    string mailbody = "个人/企业代码 %Code%  个人真实姓名/企业名称  %Rname%   联系人 %Linkman%  邮箱  %Email%  日期  %Date%";
    while (reader.Read()) 

          tmpBody = mailbody;
          toEmail = reader["CompanyEmail"].ToString(); 
          mail.To.Add(toEmail); 
          tmpBody = tmpBody.Replace("%Code%",reader["CompanyCode"].ToString()));
          tmpBody = tmpBody.Replace("%Rname%",reader["Company"].ToString()));
          ......
          ......
          mail.Body = tmpBody ; 
                          

    reader.Close();