Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
DialeR
1 / 1 / 0
Регистрация: 07.08.2013
Сообщений: 9
1

Неточное сравнение строк

13.08.2013, 23:34. Просмотров 872. Ответов 4
Метки нет (Все метки)

Здравствуйте! Вот какая задача. Имеется список строк из таблицы БД, загнанный в листбокс. Также есть список строк в текстбоксе. Требуется сравнить все строки на совпадения.

Для начала из БД получал "простые строки" (без специальных символов, значков и дописок), сравнивал их с другим списком из текстбокса. Цикл в цикле, пробежался по всем на точное совпадение. Все нормально.

Теперь нужно получить список из БД почти таких же строк, но с различными символами и приписками (в начале строки, в конце, либо есть префиксы, либо знаки еще различные).
Но если строка из текстобкса целиком входит в такую усложненную строку - то нужно засчитать совпадение строк, то есть то, что они равны. Как такой алгоритм можно реализовать. Подскажите идеи, пожалуйста.
Возможно, есть какие-то функции, умеющие это выполнять.
Наверное, в интернете и есть что-то. Но мне ценны ваши советы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.08.2013, 23:34
Ответы с готовыми решениями:

Сравнение строк одной БД с другой либо как избавится от ненужных строк
Доброе время суток! Проблема состоит в следующем. Есть корпоративная БД (то...

Сравнение строк
У меня есть обработчик сообщений от кнопки Button1. Как сделать чтобы после...

Распознавание текста. Неточное сравнение строк.
Имеется строка, например 'walk on air'. Так же имеется текст, например 'Marcia...

Сравнение строк
нужно сравнить заданную строку (читаем из файла) со строками другого файла, и...

c# сравнение строк
Извени если не в тот раздел, я тут первый раз) Вобщем вот код строки...

4
Монфрид
1211 / 1021 / 293
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
14.08.2013, 00:08 2
про IndexOf почитайте, он делает что вам надо
0
DialeR
1 / 1 / 0
Регистрация: 07.08.2013
Сообщений: 9
14.08.2013, 13:14  [ТС] 3
Цитата Сообщение от Монфрид Посмотреть сообщение
про IndexOf почитайте, он делает что вам надо
Попробовал. Выходит не совсем то, что требуется. К примеру, у меня строки длинные строки: "$ fd: mnq abcdefg.gh.re", "$ fd: mnq.gh.re", "$ fd: mnqes.re", "$ fd: mnq".

Короткая: "mnq".

Когда сравниваю,получается, что "mnq" совпадает со всеми строками, так как входит полностью в каждую. Но меня устраивает только совпадение с последней "$ fd: mnq". С остальными - не нужно считать за совпадение.

Как это реализовать можно? Может, есть другие способы?
0
MrCold
861 / 759 / 174
Регистрация: 11.01.2012
Сообщений: 1,942
14.08.2013, 13:33 4
Цитата Сообщение от DialeR Посмотреть сообщение
Но если строка из текстобкса целиком входит в такую усложненную строку - то нужно засчитать совпадение строк, то есть то, что они равны. Как такой алгоритм можно реализовать. Подскажите идеи, пожалуйста.
Цитата Сообщение от DialeR Посмотреть сообщение
Когда сравниваю,получается, что "mnq" совпадает со всеми строками, так как входит полностью в каждую. Но меня устраивает только совпадение с последней "$ fd: mnq".
Извините, ну не понятно же нифига, по какому критерию сравниваются строки .
Цитата Сообщение от DialeR Посмотреть сообщение
"mnq"
в конце что-ли обязательно должно находится ?
0
DialeR
1 / 1 / 0
Регистрация: 07.08.2013
Сообщений: 9
14.08.2013, 14:30  [ТС] 5
Цитата Сообщение от MrCold Посмотреть сообщение
Извините, ну не понятно же нифига, по какому критерию сравниваются строки . в конце что-ли обязательно должно находится ?
Например, если строка входит, то значит в другой строке после вхождения первой не должно быть пробелом, то есть других слов или множественного числа или тире. Это влияет на нужное мне совпадение. Добавил несколько условий в indexof (исключил '_', 's' , '-'). Наверное так. То есть если у меня строка, которую сравниваю оканчивается на эти символы, то не засчитывать совпадение
0
14.08.2013, 14:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2013, 14:30

Сравнение двух строк
string fim11,fim12;bool usl11; if (fim11 > fim112) usl11 = false; в данном...

Сравнение строк txt файлом
Здраствуйте, мне нужно сделать так чтобы: допустим создал 2 файла txt в 1-й...

Хэш функция строк (строк в массиве может быть около 2 миллионов)
Подскажите пожалуйста алгоритм хэш функции для строк , строк в массиве может...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru