日期:2014-05-20 浏览次数:20667 次
public static void main(String[] args) { String s = "<SPAN style=\"FONT-FAMILY: 仿宋_GB2312; FONT-SIZE: 14pt\">泥城2<FONT face=仿宋_GB2312>"; s = s.replaceAll("FONT-FAMILY\\s*:.+?;", "FONT-FAMILY:宋体"); s = s.replaceAll("<FONT\\s+face\\s*=.+?>", "<FONT face=宋体>"); System.out.println(s); }
------解决方案--------------------
就是用正则啦,这样也可以(一次replaceAll完成):
String str = "<FONT size=4>记泥城2路党员班组长顾国兴</FONT></STRONG></SPAN></P><P style=\"LINE-HEIGHT: 25pt; TEXT-INDENT: 28pt; MARGIN: 0cm 0cm 0pt; mso-char-indent-count: 2.0; mso-line-height-rule: exactly\" class=MsoNormal><SPAN style=\"FONT-FAMILY: 仿宋_GB2312; FONT-SIZE: 14pt\">泥城2<FONT face=仿宋_GB2312>路,有位驾驶员,名叫顾国兴,是一名营运一线的党员班组长。他有着出色的职业技能和爱岗敬业的精神,而且关键时刻常常能挺身而出。<SPAN lang=EN-US><?xml:namespace prefix = o ns = \"urn:schemas-microsoft-com:office:office\" /><o:p></o:p></SPAN></FONT></SPAN></P>";
System.out.println(str.replaceAll("(?<=FONT-FAMILY:).*?(?=;)|(?<=FONT face=).*?(?=>)", "宋体"));
------解决方案--------------------