C # - String Replace - PullRequest
       7

C # - String Replace

0 голосов
/ 08 ноября 2011

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

(Быстрая коричневая лиса перепрыгнула через ленивую собаку) стала бы чем-то вроде: (Быстрая коричневая лиса перепрыгнула через ла ...)

Если бы кто-то могдайте мне быстрый ответ или укажите на ответ на вопрос, который был бы очень признателен?

Ответы [ 6 ]

8 голосов
/ 08 ноября 2011
if (text.Length > 50) 
    text = text.Substring(0,50) + "...";
5 голосов
/ 08 ноября 2011
string shortened = s.Length > 50 ? s.Substring(0, 50) + "..." : s;

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

3 голосов
/ 08 ноября 2011

Использовать подстроку: (yourstringvariable.Length > 50 ? yourstringvariable.Substring(0, 50) + "..." : yourstringvariable);

2 голосов
/ 08 ноября 2011

Также было бы неплохо реализовать это как метод расширения.Как это:

public static class StringExtensions
{
    public static string Truncate(this String str, int length)
    {
        return str.Substring(0, length) + "...";
    }
}   
1 голос
/ 08 ноября 2011

Попробуйте следующий код:

string mystring;
myString = (orig_string.Length > 50) ? orig_string.SubString(0, 50) + "..." : orig_string;
1 голос
/ 08 ноября 2011

Я предполагаю, что вы хотите максимум maxLength символов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...