Відповіді:
String.Trim()
повертає рядок, який дорівнює вхідній рядку з усіма пробілами, обрізаними від початку та до кінця:
" A String ".Trim() -> "A String"
String.TrimStart()
повертає рядок з пробілами, обрізаними з самого початку:
" A String ".TrimStart() -> "A String "
String.TrimEnd()
повертає рядок з пробілами, обрізаними з кінця:
" A String ".TrimEnd() -> " A String"
Жоден з методів не змінює вихідний об'єкт рядка.
(Принаймні, у деяких реалізаціях, якщо немає білих пробілів, які слід обрізати, ви отримуєте назад той самий рядковий об'єкт, з яким ви почали:
csharp> string a = "a";
csharp> string trimmed = a.Trim();
csharp> (object) a == (object) trimmed;
returns true
Я не знаю, чи це гарантується мовою.)
" A String \r\n "
.Trim()
чи визнає це також пробілом.
використовувати String.Trim()
функцію.
string foo = " hello ";
string bar = foo.Trim();
Console.WriteLine(bar); // writes "hello"
.TrimEnd()
яка не спрацьовує (для нерозривного символу простору) , але врешті-решт це просто те, що персонаж не вказаний у документації.