Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2022, 00:27   #1
Vinnny
Новичок
Джуниор
 
Регистрация: 27.09.2022
Сообщений: 3
По умолчанию Парсинг

Есть строка "LEQN" и нужно выделить в ней подстроки длины 1,2,3,4, причем строка циклическая, т.е могут быть и такие подстроки, как "NL" "NLE" "QNL". Как это написать на с++?
Vinnny вне форума Ответить с цитированием
Старый 26.10.2022, 03:18   #2
Пётр Седов
Форумчанин
 
Регистрация: 26.10.2022
Сообщений: 119
По умолчанию

Попробуйте так:
Код:
#include <iostream>
#include <string.h>
#include <string>

using namespace std;

void print_substrings(const char* source) {
  int source_len = strlen(source);
  for (int substring_len = 1; substring_len <= source_len; substring_len++) {
    string substring(substring_len, ' ');
    for (int start_pos = 0; start_pos < source_len; start_pos++) {
      if (start_pos + substring_len <= source_len) {
        memcpy(&substring[0], source + start_pos, substring_len);
      } else {
        int fl = source_len - start_pos;
        memcpy(&substring[0], source + start_pos, fl);
        memcpy(&substring[0] + fl, source, substring_len - fl);
      }
      cout << substring << endl;
    }
  }
}

int main() {
  print_substrings("LEQN");
  return 0;
}
Вывод на консоль:
Код:
L
E
Q
N
LE
EQ
QN
NL
LEQ
EQN
QNL
NLE
LEQN
EQNL
QNLE
NLEQ
Пётр Седов вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг YuriDnepr Фриланс 3 19.12.2017 21:19
Парсинг nibufep PHP 6 17.01.2015 14:34
Парсинг xml C# Dominatorsha Помощь студентам 5 19.02.2013 14:53
Парсинг Gudzik11 Общие вопросы Delphi 6 15.04.2012 21:51
парсинг Pein95 C# (си шарп) 3 16.09.2011 01:24