C# 根据关键字选择要剪切的文本部分的最佳方法是什么?

C# 根据关键字选择要剪切的文本部分的最佳方法是什么?,c#,.net,text-processing,C#,.net,Text Processing,当您在Stackoverflow中搜索某个内容时,它会剪切问题描述中与您的条件最匹配的部分,然后标记条件词 我想知道在C语言中手动执行此操作的最佳方法,也就是说,不需要全文搜索引擎的帮助 主要问题是如何快速选择最佳文本部分 到目前为止,我所做的是: 我获取文本的空间索引。这让我知道 开始说话是为了让我能开始我的生活 子串测试从他们。 从每个空间索引中,我提前获得300个字符,并测试如何 关键字I的多次出现 发现 我假设300个字符长的部分 引用是最好的,所以我把它从原文中删掉了。 这是一个好方法

当您在Stackoverflow中搜索某个内容时,它会剪切问题描述中与您的条件最匹配的部分,然后标记条件词

我想知道在C语言中手动执行此操作的最佳方法,也就是说,不需要全文搜索引擎的帮助

主要问题是如何快速选择最佳文本部分

到目前为止,我所做的是:

我获取文本的空间索引。这让我知道 开始说话是为了让我能开始我的生活 子串测试从他们。 从每个空间索引中,我提前获得300个字符,并测试如何 关键字I的多次出现 发现 我假设300个字符长的部分 引用是最好的,所以我把它从原文中删掉了。
这是一个好方法吗?有没有更快的办法?计算出现次数是找到最相关部分的最佳方法吗?

使用这种方法,您通常会在匹配的开始或结束附近找到与关键字的最佳匹配,这意味着您不会有太多的关键字上下文。我要添加一个额外的条件,即在匹配的开始和结束附近的关键字两侧必须有n个单词

你可以考虑在更方便的地方打破比赛,比如标点符号或连词,而不是空格。

您可能还希望研究如何为关键字赋予不同的权重,而不仅仅是计算它们