Я хотел был бы сопоставить строки с подстановочным знаком (*), где подстановочный знак означает «любой». Например:Соответствующие строки с подстановочным знаком
*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.
Существует простой алгоритм, чтобы сделать это? Я не уверен в использовании регулярного выражения (хотя это и есть возможность).
Чтобы уточнить, пользователи будут вводить вышеуказанное в поле фильтра (как можно более простой фильтр), я не хочу, чтобы им приходилось самостоятельно писать регулярные выражения. Так что я могу легко трансформироваться из вышеупомянутых обозначений.
Должен 'YZ ABC x' матч' X * YZ * ', то есть сделать подстроки должны появляться в том же порядке, как в строке и шаблон или нет? Я бы предположил, что это не должно совпадать, но «строка содержит X и содержит YZ» не дает понять. Если он должен совпадать, все текущие ответы неверны. – Dukeling
Это было бы. В приведенном примере X должен появиться перед YZ. – Robinson