日期:2014-05-17  浏览次数:20720 次

要是你用其他的方法达到了目的 哥叫你哥
我做了几天的数据抓取 以前干过这个的应该明白我说的是什么意思
  一般我要把html页面转化为string形式,我过滤后的string html如下:
  <div class="wznr">   1月11日上午消息,英特尔今日在美国拉斯维加斯召开的CES(消费电子展)上正式宣布进军智能手机市场,并在中国市场率先发售。英特尔CEO欧德宁宣布,携手联想推出首款智能手机联想K800,今年第二季度由中国联通销售。
<br/>
<br/><center><img src="http://images.enet.com.cn/2012/0111/42/2538358.jpg" alt="英特尔进军智能机 携联想中国市场首发K800" title="英特尔进军智能机 携联想中国市场首发K800" border="1" />
<br/>英特尔CEO欧德宁(右)与联想全球副总裁刘军(左)发布k800智能手机
<br/></center>
<br/>
<br/>  欧德宁和联想全球副总裁刘军携手发布了K800,这款智能手机搭载基于X86平台的英特尔Atom Z2460芯片,主频1.6GHz,单核双线程,16GB存储空间,上市版将采用Android 4.0操作系统。


我的目的是要出去中间的<center></center>包括其中的所有内容
  我用的string.reaplac("<center>.*</cener>",""), 达到目的,
我在java中写测试查询时,可以达到目的,只是字符串没有那么长 ,但是形式是一样的,当我到真正的应用时,怎么
也过滤不来<center> 
  求教高人



------解决方案--------------------
先把换行符给干掉,比如:
str = str.replaceAll("\n", "");

因为通配符“.”的问题在于:Any character (may or may not match line terminators)

------解决方案--------------------
哦,可能除了换行符外,还有回车符。
\n The newline (line feed) character ('\u000A')
\r The carriage-return character ('\u000D')

这样:
str = str.replaceAll("[\n\r]", "");