基本上我想对段落中的每个单词进行标记,然后执行停用词删除。这将是我的算法的预处理数据。
答案 0 :(得分:2)
您可以删除所有标点符号并将字符串拆分为空格。
string s = "This is, a sentence.";
s = s.Replace(",","").Replace(".");
string words[] = s.split(" ");
答案 1 :(得分:0)
如果从文本文件或任何文本中读取,您可以:
<div class="head">
<div id="logo">
<a href="#"><img src="https://images.mint.com/web-client/images/mint_logo.png" alt="Mint logo"></a>
</div>
<div id="tabs">
<ul>
<li>Sign up</li>
<li>Log in</li>
</ul>
</div>
</div>
<div style="margin-right: auto; margin-left: auto; overflow: hidden; clear: both; width: 334px ! important;">
<div class="bod1">
<h1></h1>
</div>
<div class="bod2" style="float:left;">
</div>
</div>
<div class="foot" style="clear:both;">
</div>
</div>
<div class="foot">
</div>
然后您可以将停用词转换为词典并将文档保存到列表
char[] dele = { ' ', ',', '.', '\t', ';', '#', '!' };
List<string> allLinesText = File.ReadAllText(text file).Split(dele).ToList();
答案 2 :(得分:0)
您可以在常量或db中存储所有分隔符号和停用词:
public static readonly char[] WordsSeparators = {
' ', '\t', '\n', '\n', '\r', '\u0085'
};
public static readonly string[] StopWords = {
"stop", "word", "is", "here"
};
删除所有的插页。拆分文本和过滤器:
var words = new List<string>();
var stopWords = new HashSet<string>(TextOperationConstants.StopWords);
foreach (var term in text.Split(TextOperationConstants.WordsSeparators))
{
if (String.IsNullOrWhiteSpace(term)) continue;
if (stopWords.Contains(term)) continue;
words .Add(term);
}