У меня есть инструмент поиска, который я разрабатываю в Excel. В столбце "ЕС" у меня есть ячейки, каждая из которых содержит строку из 124 цифр. Эти строки состоят из 0 и 1. У меня есть 124 характеристики, которые выдают 1 или 0 ..., и пользователи могут захотеть найти 1,2,3,4,5 и т.д. Характеристики. Для простоты, скажем, в EU1 есть строка 0100100011 ..... и я хочу найти любую ячейку, содержащую 0100100000 или, возможно, 0000100010 и т.д. Другими словами, я хочу найти любую строку, содержащую "1", в определенном месте цифры, возможно несколько единиц в нескольких разрядах .......... Пример я хочу проверить, если какая-либо из этих 3 комбинаций .....
0000010000000001000000000000010010000010000000100000010010010000000000101100100000100000000000000000000000000000000000000100 0000000000001010001000000010010010010010000000100000010010010000000000100100100000100100000100000000000000000000000001000100 0000000000000110000010000010001001010000010000100000010010010000000000100100100001000100000100000000000000000000000001000100
есть 1 в этих местах ......
1000000000000000000000000000000000000000000000000000000000000000000001000000000000000000001000100000000000000000000000000000
если в других местах есть 1, то это нормально, но если тестовое условие имеет 1, а в проверенных местах есть ноль в этой цифре.
Другими словами, используя более понятные примеры, представьте, что мои строки имеют длину всего пять символов, а мои первые пять строк
EU1 10000
EU2 10001
EU3 11000
EU4 11011
EU5 00001
Я хочу найти строки, в которых весь назначенный список позиций символов содержит 1 с, сравнивая каждую из них со строкой поиска переменной, которая содержит 1 во всех позициях, где я хочу, чтобы была 1 .
Нули в переменной являются символами подстановки.
Другой способ выразить это в том, что строка поиска действует как маска.
Например, чтобы найти строки, первые две цифры которых равны 1 с (безразлично к остальным), я бы хотел указать 11000 и получить совпадения со строками EU3 и EU4.
(Это может представлять собой поиск объектов, которые имеют тип A ngular AND B lue.)
Поиск по 10000 (все объекты , которые являются ngular) должны совпадать по всем струнам , чьи первые цифра 1 а именно : EU1, EU2, EU3 и EU4.
11100 (все объекты , которые являются ngular И В LUE И С ircular) не должны давать ни одного совпадения, потому что никакие строки не содержат 1 в месте третьей цифры.
И наоборот, 00000 должен соответствовать всем строкам, потому что строка поиска со всеми нулями является подстановочным знаком.
В форме таблицы:
Search string: 11000 10000 11100 00000
↓↓ ↓ ↓↓↓
EU1 10000 → 10000 10000 → 10000
EU2 10001 → 10001 10001 → 10001
EU3 → 11000 → 11000 11000 → 11000
EU4 → 11011 → 11011 11011 → 11011
EU5 00001 00001 00001 → 00001
(none) (all)




