一个截取字符串的问题?
我在做一个数据采集的功能,把网页的代码弄下来之后呢,我要截取指定的字符串,如下:
<div class="l_img"><img src="/templets/img/bj_11.jpg" /></div>
<div class="bj_img">
<ul>
<li>电话:0731-82209913</li>
<li>传真:0731-82209913</li>
<li>邮箱:servers@cszgwl.com</li>
<li>网址:www.cszgwl.com</li>
<li>地址:湖南省长沙市芙蓉区八一路68号23楼</li>
</ul>
</div>
我要从<ul>开始截取 到</ul>结束,其他的字符不要。怎么做到啊?帮忙写点代码咯。急啊、、、、、、
------解决方案--------------------用javascript写个函数截取字符串就OK了
------解决方案--------------------正则,/^<ul>.*</ul>$/
------解决方案--------------------一个javascript解决。,
------解决方案--------------------
------解决方案--------------------可以用jquery,楼主是想得到 电话:0731-82209913
传真:0731-82209913
邮箱:servers@cszgwl.com
网址:www.cszgwl.com
地址:湖南省长沙市芙蓉区八一路68号23楼
吗?
Java code
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var str="";
$("ul li").each(function(){
str+=$(this).html()+"\n";
});
alert(str);
});
</script>
------解决方案--------------------
要是使用jquery获取的话就非常简单了。选择器直接选择div下的ul然后获取innerHTML
------解决方案--------------------
------解决方案--------------------
正则效率不够高,但是比较简洁。
效率问题还是要关注的。。
------解决方案--------------------
------解决方案--------------------
二楼高亮~
这个获取的方法有多种
截取字符串~ 使用正则表达式~ 甚至钝化到数据库,使用regexp_XXX都可以取出来~
使用JS或者jQuery恐怕没那么简单,看LZ的架势是在java代码里取得的上面的一张页面的String然后来截取,而不是直接从网页截取~
------解决方案--------------------
楼主如果写采集,建议看一下htmlparser,这个是分析html代码的
------解决方案--------------------
package com.xls;
import org.htmlparser.Node;
import org.htmlparser.Parser;
import org.htmlparser.filters.AndFilter;
import org.htmlparser.filters.HasAttributeFilter;
import org.htmlparser.filters.TagNameFilter;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
import com.demo.FileHtml;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//html就是解析的那段
Parser parser = Parser.createParser(html, "gb2312"); //html代码、编码
AndFilter filter = new AndFilter(new TagNameFilter("div"), new HasAttributeFilter("class","bj_img"));