求一个正则表达式, 谢谢

itblog 2008-01-09 03:14:49

<div class="wide"><div class="in">
<a href="http://www.youtu.com/pms/view/c957bQ-vLr8/" target='_blank'>
<img src="http://img.absoure.com/data/imgs/i/0p.jpg" alt="ister,friends" class='pack_clipImg' />
</a>

</div></div>


我现在匹配了“c957bQ-vLr8”这个字符, 根据这个字符, 需要得到 “http://img.absoure.com/data/imgs/i/0p.jpg”这个图片。

必须考虑到“c957bQ-vLr8”这个, 因为页面是查找出来的, 很多条这个记录。 但是“c957bQ-vLr8” 这个相当于id, 要得到这个id的图片。




String searchStr = "/view/c957bQ-vLr8/" target='_blank'>\\s*<img src="(.*?)""; //主要这里正则, img 和前面的 是网页上的换行符号, 我是用\\s*来匹配,但是不行。
Pattern p_img = Pattern.compile(searchStr);
Matcher m_img=p_img.matcher("这里是查找出来的很多条记录。");
if(m_img.find()){
System.out.println("youtu_img: "+ m_img.group(1));
}


这个代码我取不到“http://img.absoure.com/data/imgs/i/0p.jpg” , 各位前辈, 怎么修改正则, 才能得到呢?


...全文
124 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
name99_6 2008-03-19
  • 打赏
  • 举报
回复
学习...
hmsuccess 2008-03-18
  • 打赏
  • 举报
回复
又是正则表达式,在学习
kingssq 2008-03-13
  • 打赏
  • 举报
回复
你的关键问题不是那个\s*不能匹配,而是你引号没有转义。
  • 打赏
  • 举报
回复
String searchStr = "/view/([a-zA-Z1-9\\-]+?)/.*?>.*?<img src=\"(.*?)\"";
Pattern p_img = Pattern.compile(searchStr, Pattern.DOTALL);
Matcher m_img=p_img.matcher(str);
if(m_img.find()){
System.out.println( m_img.group(1) + ": " + m_img.group(2));
}
  • 打赏
  • 举报
回复
String searchStr = "/view/c957bQ-vLr8/.*?>.*?<img src=\"(.*?)\"";
Pattern p_img = Pattern.compile(searchStr, Pattern.DOTALL);

62,610

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧