Как определить, содержит ли строка все символы маски символов в виде непрерывной подстроки? [закрыто]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как определить, содержит ли строка все символы маски символов в виде непрерывной подстроки? [закрыто]

Сообщение Anonymous »

При наличии строки haystack (одно слово), состоящей только из строчных букв, и маски символов, содержащей только уникальные строчные буквы, как я могу определить, все ли буквы в маске символов встречаются последовательно в любой точке строки haystack? Буквы в маске символов могут использоваться в любом порядке и при необходимости могут использоваться более одного раза для формирования уточняющей строки.
Проверка строк и ожидаемых логических результатов с комментариями:

Код: Выделить всё

$tests = [
['word' => 'example',     'mask' => 'lmp'],   // true  (mpl)
['word' => 'goodness',    'mask' => 'dns'],   // false (dn, ss)
['word' => 'slippers',    'mask' => 'eip'],   // true  (ippe)
['word' => 'slippers',    'mask' => 'ips'],   // false (s, ipp, s)
['word' => 'google',      'mask' => 'go'],    // true  (goog)
['word' => 'food',        'mask' => 'go'],    // false (oo)
['word' => 'bananas',     'mask' => 'ans'],   // true  (ananas)
['word' => 'candle',      'mask' => 'ace'],   // false (ca, e)
['word' => 'mississippi', 'mask' => 'i'],     // true  (i)
['word' => 'executive',   'mask' => 'ecitx'], // false (exec, ti, e)
];
Существует много уже существующих вопросов по переполнению стека в различных языках, которые имеют схожие требования, но не имеют одинаковой комбинации правил (или их нет в PHP). В этом случае уточняющая подстрока должна полностью состоять из символов маски, и все символы маски должны использоваться хотя бы один раз.
Этот вопрос представляет собой операцию восстановления после интересный, но неполный вопрос другого пользователя был закрыт, оставлен и удален Roomba.
Я произвольно добавил детали, чтобы прояснить задачу, ограничил объем и заполнил набор тестовых примеров.

Подробнее здесь: https://stackoverflow.com/questions/730 ... sk-as-a-co
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»