C# 从输入字符串中删除某些字母

C# 从输入字符串中删除某些字母,c#,string,replace,C#,String,Replace,我目前遇到一个问题,当我搜索一个代码时,我想删除用户输入的任何“.”。我所做的代码似乎不起作用,我想知道是否有人能告诉我为什么以及我需要做什么。谢谢 foreach (var letters in id) { string letter = letters.ToString(); if (letter == ".") { id.Replace(letter, ""); } } 在.NET中是一个不可变的类型,因此您不能更改现有字符串变量的值,您需

我目前遇到一个问题,当我搜索一个代码时,我想删除用户输入的任何“.”。我所做的代码似乎不起作用,我想知道是否有人能告诉我为什么以及我需要做什么。谢谢

foreach (var letters in id)
{
    string letter = letters.ToString();
    if (letter == ".")
    {
        id.Replace(letter, "");
    }
}
在.NET中是一个不可变的类型,因此您不能更改现有
字符串
变量的值,您需要将其完全替换为

仅供参考,您不必检查字符串中是否包含
,只需对结果字符串调用
Replace(“.”,“”)
,它将删除任何存在的
,即

id = id.Replace(".", "");


Programmaticaly,也许除了Replace()方法之外,您还可以使用它


您不需要遍历字符串来替换特定的字符串,replace会为您执行此操作
id = id.Replace(".", "");
id = id.Replace(",", "");
  string m_tempStr = "This.is.a.test";
    List<string> myList = new List<string>();
    for (int i = 0; i < m_tempStr.Length; i++)
    {
        if (m_tempStr[i].ToString() != ".")
        {
            myList.Add(m_tempStr[i].ToString());
        }
    }
    foreach (var item in myList)
    {
        Console.Write(item);
    }