Проблемы с двойной оценкой SEM с использованием lavaan.survey

Кажется, это работа для алгоритма расстояния Левенштейна ( одна из десятков реализаций C # ).

Вы даете этому алгоритму две строки (одну введенную пользователем и одну из вашего списка). Затем он вычисляет, сколько символов нужно заменить, добавить или удалить, чтобы перейти от первой строки ко второй. Затем вы можете взять все элементы из вашего списка, где расстояние меньше или равно трем (например), чтобы найти простые опечатки.

Если у вас есть этот метод, вы можете использовать его таким образом:

var userInput = textInput.Text.ToLower();
var matchingEmployees = EmployeeList.Where(x => x.Name.ToLower().Contains(userInput)
                                                || LevenshteinDistance.Compute(x.Name.ToLower(), userInput) <= 3)
                                    .ToList();

0
задан Madhu 31 December 2018 в 02:21
поделиться