|
0 / 0 / 0
Регистрация: 11.10.2016
Сообщений: 15
|
|||||||||||
Распарсить текст файла11.10.2016, 09:26. Показов 896. Ответов 10
Метки нет (Все метки)
Здравствуйте, помогите пожалуйста с правильным решением для выделения подстрок в текстовом файле следующей структуры:
Кликните здесь для просмотра всего текста
Файл состоит из нескольких секций, каждая из которых начинается символом "~". Порядок и длинна каждой секции заранее не известны. Строки начинающиеся с "#" - коментарии и их присутствие не обязательно, могут быть, а могут отсутствовать. Мне интересен блок ~CURVE INFORMATION, точнее его содержимое до следующей "~" без учета комментариев. Другими словами, нужно получить названия всех кривых (всегда расположено до точки), единицы кривой (между точкой и двоеточием, может отсутствовать) и описание (всегда после двоеточия, также может отсутствовать). Самостоятельно получилось сделать следующее:
Цикл Do Until так же берет строку ~PARAMETER INFORMATION и прекращается только после того, как она встретится. Можно как то изменить код, чтобы не бралась ? Можно (и нужно ли) заменить обилие SubString и IndexOf на что-то другое для выделения подстрок или это нормальное решение ? Заранее спасибо.
0
|
|||||||||||
| 11.10.2016, 09:26 | |
|
Ответы с готовыми решениями:
10
Распарсить текст из Richtextbox'a Распарсить из текстового файла текст для получения координат |
|
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
|
|||||||
| 11.10.2016, 10:32 | |||||||
1
|
|||||||
|
Администратор
|
||||||
| 11.10.2016, 11:25 | ||||||
|
VSerg, как вариант.
3
|
||||||
|
0 / 0 / 0
Регистрация: 11.10.2016
Сообщений: 15
|
|
| 11.10.2016, 16:03 [ТС] | |
|
ViterAlex, OwenGlendower спасибо за участие !
OwenGlendower, я извиняюсь, можно вопрос по использованию ? Мне не совсем понятно куда записываются результаты и как я могу их получить ?
0
|
|
|
Администратор
|
|
| 11.10.2016, 16:36 | |
|
VSerg, результат записывается в массив curves с элементами типа CurveInformation.
0
|
|
|
1548 / 1521 / 325
Регистрация: 03.10.2012
Сообщений: 1,551
|
|||||||
| 11.10.2016, 16:53 | |||||||
1
|
|||||||
|
0 / 0 / 0
Регистрация: 11.10.2016
Сообщений: 15
|
||||||||||||||||
| 11.10.2016, 17:51 [ТС] | ||||||||||||||||
|
Огромное спасибо, все работает прекрасно.
Помогите пожалуйста с еще одним регулярным выражением для разбора нижеприведенной части: Кликните здесь для просмотра всего текста
Т.е. я сделал по образу и подобию выше приведенного решения, но пытаюсь выделить четыре параметра вместо трех:
0
|
||||||||||||||||
|
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
|
||||||
| 11.10.2016, 19:18 | ||||||
|
VSerg, вот так это будет выглядеть:
1
|
||||||
|
0 / 0 / 0
Регистрация: 11.10.2016
Сообщений: 15
|
|||||||||||
| 12.10.2016, 17:10 [ТС] | |||||||||||
|
Еще раз хочу поблагодарить всех откликнувшихся. Все сделанное работает превосходно, но прошу помощи добить еще один блок. Блок содержит численные значения для обработки и представлен в виде колонок с цифрами, вида:
Кликните здесь для просмотра всего текста
Используя советы из постов выше, я кое чему научился и получаю данные из этого блока следующим образом:
Не могли бы вы посоветовать, что должно использоваться для хранения и последующей обработки такого рода данных ?
0
|
|||||||||||
|
1591 / 664 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
|
|
| 12.10.2016, 17:45 | |
|
Задайте размерность массива до начала обработки AsciiData - Вам ведь известно количество его элементов ... последнюю размерность неправильно менять в теле цикла по j, т.к. например для второй записи AsciiData вторая размерность будет изменяться 1,2 ... теряя соответствующие значения первой записи
1
|
|
|
Администратор
|
||||||
| 12.10.2016, 18:28 | ||||||
|
VSerg, я бы сделал так:
1
|
||||||
| 12.10.2016, 18:28 | |
|
Помогаю со студенческими работами здесь
11
Распарсить текст
Распарсить текст HTML Распарсить текст в массив Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|