Asp.net中如何从数据库某字段的数据中查找筛选出图片<img>标记,并使图片显示在网页上?
Asp.net中如何从数据库某字段中查找筛选出图片<img>标记,并让图片显示在网页上。打个比方说明下:比如现在我有一数据表,表中有一字段"content",类型varc...
Asp.net中如何从数据库某字段中查找筛选出图片 <img>标记,并让图片显示在网页上。打个比方说明下:比如现在我有一数据表,表中有一字段"content",类型 varchar,该字段是用来放新闻内容的(内容数据中包含图片代码),现在的问题就是在asp.net中如何在该字段的一大堆杂乱的数据中,把含的图片代码(即:含如 <img src="***">的标记代码)给提取出来,并且在前台用控件绑定,实现这些图片的显示。
大致情况就是这样的,请高手指教哈。请附上代码说明。谢谢了~~~~
相关代码说明如下:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Text.RegularExpressions;
public partial class Default3 : System.Web.UI.Page
{
public string HTMLStr;
public string str;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Binder();
GetImgUrl(HTMLStr);
}
}
private void Binder()
{
SqlConnection conn = DB.createConn();
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter("select * from TABLE111 order by ID asc",conn);
DataSet ds = new DataSet();
sda.Fill(ds, "table111");
DataList1.DataSource = ds;
DataList1.DataKeyField = "ID";
DataList1.DataBind();
HTMLStr = ds.Tables["table111"].Columns["content"].ToString();
conn.Close();
}
public static string GetImgUrl(string HTMLStr)
{
string str = string.Empty;
Regex r = new Regex(@" <img\s+[^>]*\s*src\s*=\s*([']?)(? <url>\S+)'?[^>]*>",RegexOptions.Compiled);
Match m = r.Match(HTMLStr.ToLower());
if (m.Success)
str = m.Result("${url}");
return str;
}
}
我现在还有的问题是。在前台怎么让这些筛选出来的图片显示出来呢。
前台我只用了一个DataList控件。
相关代码如下:
<body>
<form id="form1" runat="server">
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
<ItemTemplate>
//注意:这个地方就是我的问题,就是怎么样让那些查找筛选出来的图片显示出来。代码页有个GetImgUrl()方法,是带参数的。我的思想是这样的,怎样传参才能让图片显示。有一点肯定的是,这个参数肯定是数据表的那个"content"字段的一堆杂乱数据。 问题是我不知道具体怎么传的,在前台要怎么写才能实现效果。请指教!!!谢谢了! (最好能附上代码,因为本人这方面学的还不太好!)
</ItemTemplate>
</asp:DataList>
</div>
</form>
</body> 展开
大致情况就是这样的,请高手指教哈。请附上代码说明。谢谢了~~~~
相关代码说明如下:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Text.RegularExpressions;
public partial class Default3 : System.Web.UI.Page
{
public string HTMLStr;
public string str;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Binder();
GetImgUrl(HTMLStr);
}
}
private void Binder()
{
SqlConnection conn = DB.createConn();
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter("select * from TABLE111 order by ID asc",conn);
DataSet ds = new DataSet();
sda.Fill(ds, "table111");
DataList1.DataSource = ds;
DataList1.DataKeyField = "ID";
DataList1.DataBind();
HTMLStr = ds.Tables["table111"].Columns["content"].ToString();
conn.Close();
}
public static string GetImgUrl(string HTMLStr)
{
string str = string.Empty;
Regex r = new Regex(@" <img\s+[^>]*\s*src\s*=\s*([']?)(? <url>\S+)'?[^>]*>",RegexOptions.Compiled);
Match m = r.Match(HTMLStr.ToLower());
if (m.Success)
str = m.Result("${url}");
return str;
}
}
我现在还有的问题是。在前台怎么让这些筛选出来的图片显示出来呢。
前台我只用了一个DataList控件。
相关代码如下:
<body>
<form id="form1" runat="server">
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
<ItemTemplate>
//注意:这个地方就是我的问题,就是怎么样让那些查找筛选出来的图片显示出来。代码页有个GetImgUrl()方法,是带参数的。我的思想是这样的,怎样传参才能让图片显示。有一点肯定的是,这个参数肯定是数据表的那个"content"字段的一堆杂乱数据。 问题是我不知道具体怎么传的,在前台要怎么写才能实现效果。请指教!!!谢谢了! (最好能附上代码,因为本人这方面学的还不太好!)
</ItemTemplate>
</asp:DataList>
</div>
</form>
</body> 展开
展开全部
后台
string str = "你要查询的数据";
public string EncodeStr(object)
{
return Server.HtmlEncode(str);
}
string str = "你要查询的数据";
public string EncodeStr(object)
{
return Server.HtmlEncode(str);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string 有 IndexOf 可以用来查找字符串
sql 可以用like查询 查找
sql 可以用like查询 查找
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<ItemTemplate>
<%# GetImgUrl(((DataBinder.Eval(Container.DataItem,"content").ToString())) %>
</ItemTemplate>
希望能帮到你:)
<%# GetImgUrl(((DataBinder.Eval(Container.DataItem,"content").ToString())) %>
</ItemTemplate>
希望能帮到你:)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询