1. 使用正则去除掉<pre> 标签里面的<br /> ,使用括号进行分组,使用$取分组的值
public static void main(String[] args) {
String a = "<br />测试<pre><br />final String beanName = transformedBeanName(name);Object bean;</pre> <br />";
System.out.println(a.replaceAll("(<pre>.*?)<br />(.*?</pre>)", "$1$2"));
}
结果 : <br />测试<pre>final String beanName = transformedBeanName(name);Object bean;</pre> <br />
但是,上面这种如果a = "<br />测试<pre><br /> final String beanName = transformedBeanName(name); Object bean;<br /><br /></pre> <br />"; 就不行了
那么使用下面的方法 :
2. 去掉所有的<br />
public static void main(String[] args) {
String a = "<br />测试<pre><br /> final String beanName = transformedBeanName(name); Object bean;<br /><br /></pre> <br />";
int i = 0;
while(true){
a = a.replaceAll("(<pre>.*?)<br />(.*?</pre>)", "$1$2");
i = a.length();
if (i == a.replaceAll("(<pre>.*?)<br />(.*?</pre>)", "$1$2").length()) {
break;
}
}
System.out.println(a);
}
结果: <br />测试<pre> final String beanName = transformedBeanName(name); Object bean;</pre> <br />
3. 最后一种,一句话
public static void main(String[] args) {
String a = "<br />测试<pre><br /> final String beanName = transformedBeanName(name); Object bean;<br /><br /></pre> <br />";
System.out.println(a.replaceAll("<br />(?=((?!</?pre).)*</pre>)", ""));
}
结果 : <br />测试<pre> final String beanName = transformedBeanName(name); Object bean;</pre><br />