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

请教一个有关正则表达式的问题
最近在做抓取cntv的节目单的子程序 想法是从html文件中抓取
<td width="19%">06:00</td>
<td width="66%">朝闻天下</td>
比如这两行,假如把双引号改成单引号我会写正则,但是遇到双引号我就有点糊涂了
Pattern ptime = Pattern.compile("<td width='19%'>([^</td>]*)");
Pattern pname = Pattern.compile("<td width='66%'>([^</td>]*)");
请问该如何修改正则表达式使得能够准确抓取到所需要的内容

------解决方案--------------------
你可以用转义符号\试试, 也就是双引号前面加个转义 \"
------解决方案--------------------
Pattern ptime = Pattern.compile("<td width='19%'>([^</td>]*)");
只是单双引号的问题的话你可以改为
Pattern ptime = Pattern.compile("<td width=\\"19%\\">([^</td>]*)");
就可以了