我需要从列表中获取没有前导或尾随空格的项目。我正在尝试以下代码,但仍然Trim()函数不会删除字符串的尾随空格。为什么会发生?
string ab = string.Empty;
ab += "first" + ", ";//adding a white space to the string
ab += "second" + ", ";
ab += "third" + ", ";
List<string> ls = ab.ToString().Split(',').ToList();//first, second, third,
foreach (string item in ls)
{
item.Trim();//need to remove the space
string a = item;//here still got the white space
}
答案 0 :(得分:2)
Trim返回一个在开头和结尾修剪出空白字符的字符串,因此你需要将item.Trim()分配给一个局部变量,然后它将是你修剪过的字符串。
foreach (string item in ls)
{
string trimmedItem = item.Trim(); //remove the space
string a = trimmedItem; //no white space here!
}
答案 1 :(得分:1)
String.Trim()返回从当前System.String对象的开头和结尾删除所有空格字符后剩余的字符串。
因此,您需要将foreach循环中的代码更改为:
foreach (string item in ls)
{
string a = item.Trim();
}
答案 2 :(得分:0)
foreach (string item in ls)
{
string a = item.Trim();
}
如果用','而不是','拆分,则不需要修剪