Поиск сразу нескольких слов в списке

systema

Client
Регистрация
25.07.2013
Сообщения
174
Благодарностей
64
Баллы
28
Приветствую.
Есть список с текстовкой и есть переменная, в которой 3-5 слов, нужно оставить только те строчки списка, которые содержат сразу все слова из переменной.
Порядок слов не важен, главное чтобы они были в строке списка, регистр в списке и в переменной нижний.

Допустим список:
1. как найти устройство android, заблокировать его или удалить
2. как найти телефон, если он выключен: 8 способов
3. как найти потерянный или украденный телефон на android

И переменная - android найти телефон
Получается надо оставить только 3 строку.

Подскажите как можно сделать?
Поиск по форуму всегда выдает как найти 1 слово, а вот несколько не нашел.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 340
Благодарностей
9 088
Баллы
113
Приветствую.
Есть список с текстовкой и есть переменная, в которой 3-5 слов, нужно оставить только те строчки списка, которые содержат сразу все слова из переменной.
Порядок слов не важен, главное чтобы они были в строке списка, регистр в списке и в переменной нижний.

Допустим список:
1. как найти устройство android, заблокировать его или удалить
2. как найти телефон, если он выключен: 8 способов
3. как найти потерянный или украденный телефон на android

И переменная - android найти телефон
Получается надо оставить только 3 строку.

Подскажите как можно сделать?
Поиск по форуму всегда выдает как найти 1 слово, а вот несколько не нашел.
Возможно, есть более изящный сопособ, но пока вот такой вариант в голову пришел.
Приложил пример шаблона с иллюстрацией этого способа.

Если коротко, то суть в том, что удаляем строки в списке по критерию неудовлетворения по регулярке: (android|найти|телефон).*(android|найти|телефон).*(android|найти|телефон)
Регулярку можно делать на автомате из списка слов.

107611


Результат:

107612
 

Вложения

  • Спасибо
Реакции: systema

Deisler

Client
Регистрация
26.10.2019
Сообщения
486
Благодарностей
190
Баллы
43
Приветствую.
Есть список с текстовкой и есть переменная, в которой 3-5 слов, нужно оставить только те строчки списка, которые содержат сразу все слова из переменной.
Порядок слов не важен, главное чтобы они были в строке списка, регистр в списке и в переменной нижний.

Допустим список:
1. как найти устройство android, заблокировать его или удалить
2. как найти телефон, если он выключен: 8 способов
3. как найти потерянный или украденный телефон на android

И переменная - android найти телефон
Получается надо оставить только 3 строку.

Подскажите как можно сделать?
Поиск по форуму всегда выдает как найти 1 слово, а вот несколько не нашел.
1685283614931.png

^(?=.*android)(?=.*найти)(?=.*телефон).*
 
  • Спасибо
Реакции: systema и Sergodjan

systema

Client
Регистрация
25.07.2013
Сообщения
174
Благодарностей
64
Баллы
28
  • Спасибо
Реакции: Sergodjan

systema

Client
Регистрация
25.07.2013
Сообщения
174
Благодарностей
64
Баллы
28
  • Спасибо
Реакции: Deisler

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)