Обрезать строку в Java с сохранением полного слова

, мне нужно обрезать строку в java так, чтобы:

Быстрая коричневая лисица перепрыгивала через лаз-пса.

становится

Быстрый коричневый ...

В приведенном выше примере я обрезаю до 12 символов. Если бы я просто использовал подстроку, то получил бы:

The quick br ...

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

Единственный способ, который я могу придумать, - это разделить строку на пробелы и снова соединить ее, пока ее длина не превысит заданную длину. Есть ли другой способ? Возможно, это более эффективный способ, которым я могу использовать тот же метод для «мягкой» обрезки, когда я сохраняю последнее слово (как показано в приведенном выше примере), и жесткой обрезки, которая в значительной степени является подстрокой.

Спасибо,

9
задан duffymo 12 October 2011 в 09:48
поделиться