[SOLVED] Как получить все строки списка, которые состоят из пяти слов?

Discussion in 'Вопросы новичков' started by Old, Jun 14, 2019 at 5:23 PM.

  1. Old

    Old Client

    Joined:
    Jan 24, 2018
    Messages:
    20
    Likes Received:
    2
    Всем привет.
    Нужно собрать все строки, которые состоят из пяти слов.
    Как это можно сделать? Через поиск ничего не нашел.
     
  2. doc

    doc Client

    Joined:
    Mar 30, 2012
    Messages:
    6,973
    Likes Received:
    3,280
    перебором. почти любая выборка делается перебором. с каждой строки парсишь слова регуляркой в список. Если длина списка нужная - откладываешь строку куда надо
     
    Old likes this.
  3. Old

    Old Client

    Joined:
    Jan 24, 2018
    Messages:
    20
    Likes Received:
    2
    Ранее находил регулярку, которая парсит не только строки из пяти слов, но еще и все строки в которых менее пяти слов. Может быть есть такая регулярка, которая сможет спарсить строки только из необходимого количества слов. В регулярках не силен.
     
  4. doc

    doc Client

    Joined:
    Mar 30, 2012
    Messages:
    6,973
    Likes Received:
    3,280
    регулярки есть любые. Всё зависит от того, что считать словом
     
  5. Old

    Old Client

    Joined:
    Jan 24, 2018
    Messages:
    20
    Likes Received:
    2
    Словом может быть любой знак или символ разделяемый пробелом.
     
    Last edited: Jun 14, 2019 at 8:38 PM
  6. doc

    doc Client

    Joined:
    Mar 30, 2012
    Messages:
    6,973
    Likes Received:
    3,280
    Code (text):
    1. ^\s*\S+(\s+\S+){4}\s*$
     
    Old likes this.
  7. Old

    Old Client

    Joined:
    Jan 24, 2018
    Messages:
    20
    Likes Received:
    2
    Спасибо за помощь.
     
    Last edited: Jun 14, 2019 at 6:01 PM
  8. Mikhail B.

    Mikhail B. Moderator

    Joined:
    Dec 23, 2014
    Messages:
    5,584
    Likes Received:
    1,796
    Перебирать не обязательно. Достаточно выделить подсписок по регулярке
     
    Old likes this.

Пользователи просматривающие тему (Пользователей: 0, Гостей: 0)