如何删除看起来像
的字符串中的最后一个<br>
123 Address Street<br> Queens land<br>
London<br> <br> <br>
最后一个人不一定总是第五个。它可以是第二个,第三个等
我需要一个用于replaceAll()或replaceFirst()
的正则表达式编辑:删除邮政编码
答案 0 :(得分:10)
使用String.lastIndexOf告诉你它开始的索引,然后你可以自己剪掉它。
答案 1 :(得分:1)
String newStr = str.replaceAll("((<br[^>*]>\\s*)+)<br[^>*]>","$1");
注意:这并不完全符合您的要求,而是从一组多个<br>
标记中删除最后一个<br>
,由可选空格分隔。在您的方案中,结果是相同的,但可能还有其他方案。
如果你只是想摆脱最后的<br>
,你可以这样做:
String newStr = str.replaceFirst("(.*)<br[^>*]>","$1");
答案 2 :(得分:0)
text = text.replaceAll("(?smi)<br\\s*/?>(?!\\<br).*?$", "$1")
答案 3 :(得分:0)
其中一个
"(?s)<br>(?=((?!<br>).)*$)" or "<br>(?=((?!<br>)[\\S\\s])*$)"