Я хотел бы сопоставить строки с подстановочным знаком (*), где подстановочный знак означает "any". Например:
*X = string must end with X
X* = string must start with X
*X* = string must contain X
Кроме того, некоторые компоненты используют, например:
*X*YZ* = string contains X and contains YZ
X*YZ*P = string starts with X, contains YZ and ends with P.
Есть ли простой алгоритм для этого? Я не уверен в использовании регулярных выражений (хотя это и есть возможность).
Чтобы уточнить, пользователи будут вводить приведенное выше в поле фильтра (как можно более простой фильтр), я не хочу, чтобы им приходилось самостоятельно писать регулярные выражения. Так что я могу легко преобразовать из вышеупомянутых обозначений, было бы хорошо.