powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
6 сообщений из 6, страница 1 из 1
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318146
Mike Winny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анализируется текст, состоящий из положительных чисел, расположенных равномерно, а конкретнее:
каждое число занимает 15 знаков начиная с конца, т.е. первые символы - пробелы (от 0 до 14 штук), а последующие символы - цифры от 1 до 15 штук.
Лобовое RX, приходящее на ум, это объединение по ИЛИ выражений вида \s{n}\d{15-n} с перебором n от 0 до 14, т.е.:
\s{14}\d{1}|\s{13}\d{2}|\s{12}\d{3}... и так далее до |d{15}
Существует ли более компактное написание данного регулярного выражения?
...
Рейтинг: 0 / 0
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318149
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
\s*\d+
А будет ли строка 15 символов или больше/меньше - это скорее всего вообще знать не нужно, либо хватит обычного length().
...
Рейтинг: 0 / 0
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318153
Mike Winny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в том, что это шаблон является частью более сложного шаблона и ловля объектов, выходящих за 15 знаков не очень приветствуется, хотя, вероятно, в 99% случаев этот шаблон сработает
...
Рейтинг: 0 / 0
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318170
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если мой хрустальный шар не врет, то у тебя строка типа:
123_____456789
И надо вытащить из нее 456?

Тогда выкинь регулярки нафиг и просто разрежь строку по количеству символов. Будет и просто и надежно и быстро.
...
Рейтинг: 0 / 0
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318175
Mike Winny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Увы, дело несколько сложнее
Имеем многострочный документ (точнее, разные по формату документы), имеющие свой формат, заполненный всяким мусором в виде строк заголовков, подитогов и т.п.
Соответственно, надо выделить строки с данными, имеющие счетный набор описанных в начале блоков, в специфическом обрамлении, чтобы из них уже вытащить данные
Поэтому, предполагалось с использованием стандартного механизма искать строки данных по составным шаблонам (выбранным из спискашаблонов для разныхтипов документов), а затем уже вытаскивать из этих срок данные по подходящему к конкретному случаю алгоритму
...
Рейтинг: 0 / 0
Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
    #39318194
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда комбинируй.
Сначала прогоняешь документ через регулярку которая на основе известного "специфического обрамления" решит это вообще правильная строк или нет? И если правильная, то выдаст тот кусок из строки который содержит нужную информацию.
А вторым шагом режешь найденную подстроку по координатам.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Можно ли сделать компактнее регулярное выражение поиска числа по равномерной сетке?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]