我目前正在使用Java EE开发Web应用程序,我正在使用Rich-Javascript-Editor(http://www.primefaces.org/showcase/ui/editor.jsf).由于用户可以轻松添加太多将转换为linebreak-tag的换行符,因此我需要从String的末尾删除所有这些Tags.
有没有一种优雅的方式使用正则表达式来实现这一目标?
一个示例String将是:
"This is a test <b>bold</b><br/><br/>"
Run Code Online (Sandbox Code Playgroud)
显然,最后两个标签必须被删除.
预先感谢您的任何帮助
最诚挚的问候,罗伯特
像这样的东西:
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>";
Run Code Online (Sandbox Code Playgroud)
请注意,它还将删除尾随空格; \\s*如果您不想要,可以删除最终版本.