在 Form1 的顶部,我做了:
private static readonly Regex AnyWordRegex = new Regex(@"((?<word>[a-zA-Z]{4,}))", RegexOptions.Singleline | RegexOptions.Compiled);
在构造函数中我做了:
string file = File.ReadAllText(OriginalHtmlFilePath);
string strippedHtml = StripHtml(file);
本例中的 OriginalHtmlFilePath 包括带有希伯来语单词的 html 文件。
这是 StripHtml :
public static string StripHtml(string htmlString)
{
return StripHtmlRegex.Replace(htmlString, @"|");
}
之后,我看到 strippedHtml 包含希伯来语单词。然后我在构造函数中做:
_words = ExtractWords(strippedHtml);
_words 是列表
private static List<string> ExtractWords(string text)
{
MatchCollection matchCollection = AnyWordRegex.Matches(text);
return (from Match match in matchCollection select match.Groups[1].Value).ToList();
}
在执行 ExtractWords 之后,我看到 List _words 只包含英文单词。大约608个单词只有英文。但在这种情况下,我正在处理的网站是 www.walla.co.il 或 www.ynet.co.il,这是一个希伯来语网站。
如果我在 cnn.com 或 foxnews.com 上工作,任何英文网站都可以正常工作。