Как уменьшить текст до.... символов?

  • Автор темы Автор темы igzdizain
  • Дата начала Дата начала

igzdizain

Client
Регистрация
16.05.2015
Сообщения
500
Реакции
15
Баллы
18
Есть текст : Город Нокерстифф, штат Огайо. Безутешный Уиллард Рассел готов на всё, лишь бы спасти умирающую жену. Он начинает молить небеса о спасении, забыв об остальном мире, в результате чего его сын Элвин вынужден превратиться из забитого школьника в решительного мужчину, способного взять дело в свои руки.
Как уменьшить этот текст до 200 знаков? То есть текст этот в переменной и надо проверить сколько там символов и если символов больше 200, то сократить до 200, но чтобы последнее слово обрезалось цельно, а не на половине слова
 
C#:
Развернуть Свернуть Копировать
string str = project.Variables["text"].Value; // исходный текст
char[] mas = {' ', '.', ',', '!', '?'}; // массив символов-разделителей
int cut = 200; // до какой длины обрезать текст
int len = 0;
if(str.Length > cut){
    do{
        char c = str[cut];
        foreach(char item in mas)
            if(item == c){
                len = cut; break;
            }
        cut--;
    }while(len == 0);
    str = str.Remove(len);
}
return str;
 
  • Оценить
Реакции: Sergodjan и igzdizain
Есть текст : Город Нокерстифф, штат Огайо. Безутешный Уиллард Рассел готов на всё, лишь бы спасти умирающую жену. Он начинает молить небеса о спасении, забыв об остальном мире, в результате чего его сын Элвин вынужден превратиться из забитого школьника в решительного мужчину, способного взять дело в свои руки.
Как уменьшить этот текст до 200 знаков? То есть текст этот в переменной и надо проверить сколько там символов и если символов больше 200, то сократить до 200, но чтобы последнее слово обрезалось цельно, а не на половине слова
Кубик "Обработка текста - Regex" взять первое (нулевое) совпадение.
Регулярка:
Развернуть Свернуть Копировать
[\w\W]{1,200}(?=\ )

64123
 
  • Оценить
Реакции: wasya и Alexmd

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)