Я хочу разбить длинный текст, хранящийся в строковой переменной, следуя этим правилам:
- Разделить на точку (.)
- Подстроки должны иметь минимальную длину 30 (например).
Возьмите этот пример:
"The boy ate the apple. The sun is shining high in the sky. The answer to life the universe and everything is forty two, said the big computer."
скажем, минимальная длина, которую я хочу, составляет 30.
В результате будет получено следующее разбиение:
- «Мальчик съел яблоко. Солнце светит высоко в небе».
- «Ответ жизни вселенной и всему сорок два, - сказал большой компьютер».
Я не хочу принимать "Мальчик съел яблоко". как разделение, потому что это менее 30 символов.
2 способа, о которых я думал:
- Переберите всех персонажей и добавьте их в String Builder. И всякий раз, когда я достигаю точки (.), Я проверяю, больше ли мой String компоновщик, чем минимум, который я делю, иначе я продолжаю.
- Разделить все точки (.), А затем выполнить цикл через разбиения. если одна из строк Splitted меньше минимальной, я объединяю ее со строкой после.
Но я смотрю, можно ли это сделать напрямую с помощью регулярных выражений для разделения и проверки минимального количества символов перед совпадением.
Спасибо