首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

java 或oracle 获取 字段内容中的图片地址,该怎么解决

2012-08-01 
java 或oracle 获取 字段内容中的图片地址数据库中一个字段是clob类型,里面存的是一篇文章,文章中有图片现

java 或oracle 获取 字段内容中的图片地址

  数据库中一个字段是clob类型,里面存的是一篇文章,文章中有图片

  现在要获取所有<img> 标签下的路径

 如下所示 存的内容如下
 

HTML code
<p><table border="0" cellspacing="1" summary="" cellpadding="1" width="200">    <tbody>        <tr>            <td><img alt="" width="750" height="410" src="/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_01_20111125153230.jpg" /></td>        </tr>        <tr>            <td><img alt="" width="750" height="294" src="/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_02_20111125153234.jpg" /></td>        </tr>        <tr>            <td><img alt="" width="750" height="482" src="/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_03_20111125153238.jpg" /></td>        </tr>        <tr>            <td><img alt="" width="750" height="266" src="/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_04_20111125153241.jpg" /></td>        </tr>    </tbody></table></p>
 

要得到以下结果
mall/userfiles/star/product//Image/WWWWWWWWWWWW20_01_20111125153230.jpg
mall/userfiles/star/product//Image/WWWWWWWWWWWW20_02_20111125153234.jpg
mall/userfiles/star/product//Image/WWWWWWWWWWWW20_03_20111125153238.jpg
mall/userfiles/star/product//Image/WWWWWWWWWWWW20_04_20111125153241.jpg


众神可有办法。。。。

[解决办法]
会jquery不?会就简单多了
<script language="javascript" src="jquery-1.6.2.js"></script>//换成你的jquery对应的版本
<script language="javascript">
$(function(){
$("tbody tr td img").each(function(index, element) {
var value = element.src+"";
alert(value.substring(value.indexOf("mall"),value.length));
//现在这个value就是你需要的值
});
});
</script>
[解决办法]
没好的办法,正则表达式?
Java code
Pattern p = Pattern.compile("<img[^>]+src=\"([^\"]*?)\".*?>");        Matcher m = p.matcher("<td><img alt=\"\" width=\"750\" height=\"482\" src=\"/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_03_20111125153238.jpg\" /></td>");        while (m.find()) {            System.out.println(m.group(1));        }
[解决办法]
页面js

var refs = new Array();
var imgs = document.getElementsByTagName("img");
for(var i = 0;i < imgs.length;i++)
{
refs[i] = imgs[i].src;
}
[解决办法]
1楼的应该弄错使用场景了,这东西存在Oracle里面,用不了JS。

先读取出来变成 String

然后:

String str = "<tr>"
+ "<td><img alt=\"\" width=\"750\" height=\"410\" src=\"/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_01_20111125153230.jpg\" />\n</td>"
+ "</tr>\n"
+ "<tr>\n"
+ "<td>\n<img alt=\"\" width=\"750\" height=\"294\" src=\"/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_02_20111125153234.jpg\" /></td>"
+ "</tr>"


+ "<tr>"
+ "<td><img alt=\"\" width=\"750\" height=\"482\" src=\"/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_03_20111125153238.jpg\"\n /></td>"
+ "</tr>"
+ "<tr>"
+ "<td><img alt=\"\" width=\"750\" height=\"266\" \nsrc=\"/mall/userfiles/star/product//Image/WWWWWWWWWWWW20_04_20111125153241.jpg\" /></td>"
+ "</tr>";
Pattern p = Pattern.compile("<img\\s.*?src=\"([^\"]*)", Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(str);
while (m.find()) {
System.out.println("URL: " + m.group(1) + "\tIN: " + m.group());
}

你要的东西都在循环中的 m.group(1) 中

[解决办法]

探讨

1楼的应该弄错使用场景了,这东西存在Oracle里面,用不了JS。

先读取出来变成 String

然后:

String str = "<tr>"
+ "<td><img alt=\"\" width=\"750\" height=\"410\" src=\"/mall/userfiles/star/product//Image/WWWWWWWW……

热点排行