Поиск в тексте

Areostar
Дата: 20.12.2017 15:04:48
Вопрос как организовать поиск по тексту.

предположим текст в документе разделён на строки

Я могу искать подстраку в строке. Но что если совпаденине затрагивает несколько строк???

Должны быть готовые алгоритмы!
Areostar
Дата: 20.12.2017 16:10:11
регулярные вырожения это поняиютно. но мне надо найти в каких строках найдено совпадение. Если совпадений несколько то наити все.

то есть как я понял измерить длину искомого текста(скажем 20 символов) берём первые 20 символов текста документа и сравниваем. если нет то сдвигаем на символ и сравниваем опять. я вправельном направлении думаю или нет?
Akina
Дата: 20.12.2017 16:18:40
Areostar
Но что если совпаденине затрагивает несколько строк???

Если в подстроке есть символ(ы) перевода строки - то совпадение ОБЯЗАНО "затрагивать несколько строк". А если таковых нет - то совпадение НЕ МОЖЕТ "затрагивать несколько строк".
Areostar
Дата: 20.12.2017 16:24:26
Akina,

дельное замечание. данный символ надобудет игнорить.

на счёт перебора направление правельное или как то по другому можно?
Руслан Дамирович
Дата: 20.12.2017 17:59:59
Areostar
Вопрос как организовать поиск по тексту.
Должны быть готовые алгоритмы!

Да полно. Ты на чем кодить собрался, малыш?
https://www.regexbuddy.com/programming.html
ptr128
Дата: 20.12.2017 19:20:03
Areostar
берём первые 20 символов текста документа и сравниваем. если нет то сдвигаем на символ и сравниваем опять. я вправельном направлении думаю или нет?

Не эффективно. Лучше, берем текст и ищем в нем первый символ из искомой строки. Если он найден, тогда уже со следующей позиции сравниваем строки. Если строки совпали, переходим к поиску начиная со следующего символа после конца строки. Если не совпали - то к поиску, начиная со следующего символа после найденного в первом поиске.
Areostar
Дата: 20.12.2017 19:34:10
ptr128,

в этом есть смысл! :) буду думать дальше
Akina
Дата: 20.12.2017 19:50:28
Размер текста?
Areostar
Дата: 20.12.2017 21:15:21
Akina,

Ну в среднем несколько сот строк
Akina
Дата: 20.12.2017 21:27:04
Areostar, тогда тупо загрузить всё в память, вычистить переводы строк из текста и из шаблона, и использовать штатную функцию поиска подстроки в строке.