Подтвердить что ты не робот

Как удалить ведущие и конечные пробелы из строки

У меня есть следующий ввод:

string txt = "                   i am a string                                    "

Я хочу удалить пробел с начала и конца строки.

Результат должен быть: "i am a string"

Как это сделать в С#?

4b9b3361

Ответ 1

String.Trim

Удаляет все символы верхнего и нижнего пробелов из текущего объекта String.

Использование:

txt = txt.Trim();

Если это не работает, очень вероятно, что "пробелы" - это не пробелы, а некоторые другие символы непечатаемого или белого пробела, возможно, вкладки. В этом случае вам нужно использовать метод String.Trim, который принимает массив символов:

  char[] charsToTrim = { ' ', '\t' };
  string result = txt.Trim(charsToTrim);

Источник

Вы можете добавить в этот список, как и когда вы столкнетесь с большим количеством пробелов, например, в ваших входных данных. Хранение этого списка символов в вашей базе данных или файле конфигурации также означало бы, что вам не нужно перестраивать приложение каждый раз, когда вы сталкиваетесь с новым символом для проверки.

Ответ 2

Вы можете использовать:

  • String.TrimStart - Удаляет все ведущие вхождения набора символов, заданных в массиве из текущего объекта String.
  • String.TrimEnd - Удаляет все завершающие вхождения набора символов, заданных в массиве из текущего объекта String.
  • String.Trim - комбинация двух функций выше

Применение:

string txt = "                   i am a string                                    ";
char[] charsToTrim = { ' ' };    
txt = txt.Trim(charsToTrim)); // txt = "i am a string"

EDIT:

txt = txt.Replace(" ", ""); // txt = "iamastring"   

Ответ 3

Я действительно не понимаю некоторые из обручей, которые проходят другие ответы.

var myString = "    this    is my String ";
var newstring = myString.Trim(); // results in "this is my String"
var noSpaceString = myString.Replace(" ", ""); // results in "thisismyString";

Это не ракетостроение.

Ответ 4

txt = txt.Trim();

Ответ 5

Или вы можете разделить свою строку на строковый массив, разбив по пробелу и затем добавить каждый элемент строкового массива в пустую строку.
Может быть, это не самый лучший и быстрый способ, но вы можете попробовать, если другой ответ не то, что вы хотите.

Ответ 6

text.Trim() следует использовать

string txt = "                   i am a string                                    ";
txt = txt.Trim();

Ответ 7

Используйте метод Trim.

Ответ 8

 static void Main()
    {
        // A.
        // Example strings with multiple whitespaces.
        string s1 = "He saw   a cute\tdog.";
        string s2 = "There\n\twas another sentence.";

        // B.
        // Create the Regex.
        Regex r = new Regex(@"\s+");

        // C.
        // Strip multiple spaces.
        string s3 = r.Replace(s1, @" ");
        Console.WriteLine(s3);

        // D.
        // Strip multiple spaces.
        string s4 = r.Replace(s2, @" ");
        Console.WriteLine(s4);
        Console.ReadLine();
    }

ВЫВОД:

Он увидел милую собаку. Было еще одно предложение. Он увидел милую собаку.

Ответ 9

Вы можете использовать

string txt = "                   i am a string                                    ";
txt = txt.TrimStart().TrimEnd();

Вывод: "Я - строка"