繁体   English   中英

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

[英]Remove certain letters from input string

我目前遇到一个问题,当我搜索代码时,我想删除用户输入的任何“。”。 我完成的代码似乎无法正常运行,并且想知道是否有人可以告诉我原因以及我需要做什么。 谢谢。

foreach (var letters in id)
{
    string letter = letters.ToString();
    if (letter == ".")
    {
        id.Replace(letter, "");
    }
}

.NET中的字符串是不可变的类型,因此您不能更改现有string变量的值,需要将其完全替换为Replace所返回的值,即

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

仅供参考,您不必检查是否. 包含在字符串中,您只需在生成的字符串上调用Replace(".", "") ,它将删除任何. 现在即

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

看例子

字符串替换方法

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

以编程方式,也许您可​​以使用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);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM