Вырезать <br/> -Tags от конца строки - PullRequest
1 голос
/ 17 февраля 2011

В настоящее время я разрабатываю веб-приложение с использованием Java EE, где я использую Rich-Javascript-Editor (http://www.primefaces.org/showcase/ui/editor.jsf). Поскольку пользователь может легко добавить слишком много разрывов строк, которые будут преобразованы в теги переноса строк, мне нужно удалить все эти теги в конце строки.

Есть ли элегантный способ использования Regex для достижения этой цели?

Пример строки:

"This is a test <b>bold</b><br/><br/>" 

Где, очевидно, последние два тега должны быть удалены.

Заранее благодарю за любую помощь

С наилучшими пожеланиями, Роберт

Ответы [ 4 ]

7 голосов
/ 17 февраля 2011

Примерно так:

String s = "This is a test <b>bold</b><br/><br/>";
String s2 = s.replaceAll("(\\s*<[Bb][Rr]\\s*/?>)+\\s*$", "");
// s2 = "This is a test <b>bold</b>";

Обратите внимание, что это также удалит конечные пробелы;Вы можете удалить окончательный \\s*, если вы этого не хотите.

3 голосов
/ 17 февраля 2011

Вот простая строка Java-кода для удаления всех экземпляров подстроки "<br/>" из конца строки myString:

myString = myString.replaceAll("(<br/>)+$", "");
0 голосов
/ 11 сентября 2017

Это должно сработать в большинстве случаев.

Это регулярное выражение учитывает большинство сценариев, в которых различные формы для <br> встречаются

Все следующие действительные <br> утверждения:

-<br>
-<br/>
-<br />
-<br / >
-<br/ >
-<br //// >

Это регулярное выражение идентифицирует все такие формы <br>

string = string.replaceAll("<br[\\s/]*>", "");
0 голосов
/ 28 сентября 2015

Попробуйте это. Это работает для меня

myString =myString .replaceAll("<br/>", "");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...