2011-02-16 43 views
1

我目前正在开发一个使用Java EE的Web应用程序,我正在使用Rich-Javascript-Editor(http://www.primefaces.org/showcase/ui/editor.jsf )。 由于用户可以轻松地添加太多换行符并将其转换为换行符,我需要从字符串末尾删除所有这些标签。Cut <br/> -Tags from String end

有没有使用正则表达式来完成这个优雅的方式?

的示例串是:

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

显然在哪里最后两个标签必须除去。

预先感谢您的任何帮助

最好的问候, 罗伯特

回答

6

事情是这样的:

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*

+0

用“replaceAll”代替“替换”,这个工作非常完美,非常感谢! – 2011-02-16 23:41:21

3

下面是Java代码的简单线从字符串myString的最后删除的子"<br/>"的所有实例:

myString = myString.replaceAll("(<br/>)+$", ""); 
0

试试这个one.Its我

myString =myString .replaceAll("<br/>", ""); 
0

工作这应该对大多数情况都有效。

此正则表达式认为最,其中用于<br>不同的形式出现

场景以下所有条件都有效<br>声明:

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

此正则表达式识别所有这些形式的<br>

string = string.replaceAll("<br[\\s/]*>", ""); 
+0

为您的答案提供解释 – 2017-09-11 08:36:38

相关问题