asp.net把搜索结果的关键字以红色显示出来

.aspx code

Text to Search:

The Data Being Search

%# Highlight(searchword, DataBinder.Eval(Container.DataItem, "results"), "", "") %>

 

 

.cs Code
string searchword;
DataTable pls = new DataTable();

public void Page_Load(object sender, EventArgs e)
{
	BuildDataStore();

	completeData.DataSource = pls;
	completeData.DataBind();
}


public void BuildDataStore()
{
	DataRow dr;

	pls.Columns.Add(new DataColumn("Results", typeof(string)));

	dr = pls.NewRow();
	dr(0) = "If only God would give me some clear sign! Like making a large deposit in my name at a Swiss bank.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "Is sex dirty? Only when it's being done right.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "On the plus side, death is one of the few things that can be done just as easily as lying down.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "I took a speed reading course and read 'War and Peace' in twenty minutes. It involves Russia.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "To *you* I'm an atheist; to God, I'm the Loyal Opposition.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "Sex without love is an empty experience, but as empty experiences go, it's a pretty good empty experience.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "It's not that I'm afraid to die. I just don't want to be there when it happens.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "What if everything is an illusion and nothing exists? In that case, I definitely overpaid for my carpet.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "Interestingly, according to modern astronomers, space is finite. This is a very comforting thought-- particularly for people who can never remember where they have left things.";
	pls.Rows.Add(dr);

	dr = pls.NewRow();
	dr(0) = "Eighty percent of success is showing up.";
	pls.Rows.Add(dr);
}


public void BindData(string strQuery)
{
	searchword = strQuery;

	DataView dv;
	dv = new DataView(pls);
	dv.RowFilter = "Results LIKE '%" + Regex.Replace(searchword, "'", "''") + "%'";

	SearchResults.DataSource = dv;
	SearchResults.DataBind();
}


public string Highlight(string Search_Str, string InputTxt, string StartTag, string EndTag)
{

	string ResultStr;
	return Regex.Replace(InputTxt, "//b(" + Regex.Escape(Search_Str) + ")//b", StartTag + "$1" + EndTag, RegExOptions.IgnoreCase);
}


public void searchQuotes(object sender, EventArgs e)
{
	BindData(SearchTerm.Text);
	SearchResults.Visible = true;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值