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

做全文检索时,想把查询到的附近的一段文本提取出来,像google那样,怎么才能使性能根好?分不多了,已经全部了

2012-02-23 
做全文检索时,想把查询到的附近的一段文本提取出来,像google那样,如何才能使性能根好?分不多了,已经全部了

做全文检索时,想把查询到的附近的一段文本提取出来,像google那样,如何才能使性能根好?分不多了,已经全部了!
做全文检索时,想把查询到的附近的一段文本提取出来,像google那样,如何才能使性能根好?

感觉indexof substring这些东性能会很差,如果是很大的文本

不知道大家有什么根好的办法,获取什么其它组件?

谢谢!

[解决办法]
用正则表达式效果会好很多
[解决办法]
看看lucene.net它是如何做的,
具体我也没做过
[解决办法]
看我的BLOG,里面有多Lucene.NET Nutch.NET 的介绍。
全文检索使用Lucene.NET 很好用,先对文本建立索引,然后就是查询匹配了。
[解决办法]
刚好在搞
参考参考 关键词前后面提取0到20个字符(防止关键词在文末或则文尾出错)

VB.NET code
dim result as stringdim strposi as string ‘高亮显示Dim matchesregex As New Regex("[color=#FF0000].{0,20}[/color]" & keyword(j) & "[color=#FF0000].{0,20}[/color]", RegexOptions.IgnoreCase Or RegexOptions.Multiline)                Dim matchesfound As MatchCollection                Dim matchmade As Match                matchesfound = matchesregex.Matches(strcontent)                For Each matchmade In matchesfound                    strposi = strposi & matchmade.Value                    strposi = Replace(strposi, keyword(j), "<font color=#C60A00>" & keyword(j) & "</font> ")                Next                result = result & strposi 

热点排行