Эй, ребята, у меня есть текстовый файл, я разделил его на 4 части.Я хочу найти в каждой части слова, которые встречаются в каждой части, и набрать это слово
exmaple
Добро пожаловать в финал по баскетболу, баскетбольные команды сегодня прошли большой путь.без особой задержки давайте играть в баскетбол.
Я хочу вернуть национальное = 1, поскольку оно появляется только в одной части и т. д.
Я работаю над определением контекста текста, используя положение слова.
я работаю с c # и не очень хорош в обработке текста, в основном, если слово появляется в 4 секциях, оно получает 4 балла, если слово появляется в 3 секциях, оно получает 3 балла, если слово появляется в 2 секциях, оно получает 2 балла, если слово появляетсяв 1-м разделе он набирает 1
спасибо заранее
пока у меня есть этот
var s = "добро пожаловать в финал национальных баскетбольных матчей, сегодня у баскетбольных команд естьпройти долгий путь. без особой задержки давайте играть в баскетбол. ";
var numberOfParts = 4;
var eachPartLength = s.Length / numberOfParts;
var parts = new List<string>();
var words = Regex.Split(s, @"\W").Where(w => w.Length > 0); // this splits all words, removes empty strings
var wordsIndex = 0;
for (int i = 0; i < numberOfParts; i++)
{
var sb = new StringBuilder();
while (sb.Length < eachPartLength && wordsIndex < words.Count())
{
sb.AppendFormat("{0} ", words.ElementAt(wordsIndex));
wordsIndex++;
}
// here you have the part
Response.Write("[{0}]"+ sb);
parts.Add(sb.ToString());
var allwords = parts.SelectMany(p => p.Split(' ').Distinct());
var wordsInAllParts = allwords.Where(w => parts.All(p => p.Contains(w))).Distinct();