|
1 / 1 / 0
Регистрация: 20.04.2013
Сообщений: 9
|
|
Добавление строк по шаблону29.08.2013, 16:26. Показов 1618. Ответов 3
Метки нет (Все метки)
Доброго дня! Я понимаю, что задача, которая возникла передо мной с моими знаниями не выполнима.. Поэтому надеюсь хоть на какую-то помощь)))... Если такое возможно средствами командной строки... Опишу ситуацию и цель..
Есть csv-файл образец-шаблон: Кликните здесь для просмотра всего текста
20100;d2-01: 20300;d2-02 30100;d3-01 30110;d3-02 30120;d3-03 30130;d3-04 30140;d3-05 30200;d3-06 30210;d3-07 30220;d3-08 30230;d3-09 30240;d3-10 30300;d3-11 30310;d3-12 30320;d3-13 30330;d3-14 30340;d3-15 40100;d4-01 40110;d4-02 40120;d4-03 40130;d4-04 40140;d4-05 40200;d4-06 40300;d4-07 40400;d4-08 40600;d4-09 40610;d4-10 40620;d4-11 40630;d4-12 40700;d4-13 40710;d4-14 40720;d4-15 40730;d4-16 40800;d4-17 40810;d4-18 40820;d4-19 40830;d4-20 50000;d5-01 50100;d5-02 50200;d5-03 50300;d5-04 50400;d5-05 Это эталон будущей примерной структуры необходимого файла... Есть файл work.csv с примерной структурой: Кликните здесь для просмотра всего текста
20100;xxx 20300;zzz 30200;aaa 30210;bbb 20100;qqq 20300;www 30200;rrr 20100;ttt 20300;yyy 20100;uuu 20300;iii 50300;ммм Это как образец.... То есть структура не стабильная, первые ДВЕ строки, начинаюшиеся с 20100 и 20300 стабильны и считаются началом нового блока информации..., вполь до следующих "20100 и 20300"... Остальные строки или есть или нет, или все или не все.. без всяких правил.... Цель преобразовать файл, добавив нехватающие строки по шаблону, со значением равным нулю, приведя к такому виду: Кликните здесь для просмотра всего текста
20100;xxx 20300;zzz 30100;0 30110;0 30120;0 30130;0 30140;0 30200;aaa 30210;bbb 30220;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;qqq 20300;www 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;rrr 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;ttt 20300;yyy 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;uuu 20300;iii 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;ммм 50400;0 Помогите или подскажите как такое реализовать.... Средствами поиска и замены, это нереально много условий... Может кто-то знает, как это сделать проще?!
0
|
|
| 29.08.2013, 16:26 | |
|
Ответы с готовыми решениями:
3
Поиск в каждом текстовом файле подстроки по шаблону и добавление найденной к имени этого файла Поиск в текстовом файле строк по шаблону и их удаление или замена задаваемой строкой Добавление статей по шаблону |
|
Модератор
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
|
||
| 29.08.2013, 16:35 | ||
|
Не понял ТЗ.
По какому принципу идет добавление строк?
0
|
||
|
1 / 1 / 0
Регистрация: 20.04.2013
Сообщений: 9
|
||
| 29.08.2013, 17:05 [ТС] | ||
|
Файл work.csv считать исходным... На основе шаблона получаем Кликните здесь для просмотра всего текста
20100;xxx
20300;zzz 30100;0 30110;0 30120;0 30130;0 30140;0 30200;aaa 30210;bbb 30220;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;qqq 20300;www 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;rrr 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;ttt 20300;yyy 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;uuu 20300;iii 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;ммм 50400;0 где все строки с 0 на конце строки считаются добавленными... Я может не очень правильно объясняю... А нехватающие строки из результата вот: Кликните здесь для просмотра всего текста
20100;xxx (Уже существовала) 20300;zzz (Уже существовала) 30100;0 30110;0 30120;0 30130;0 30140;0 30200;aaa (Уже существовала) 30210;bbb (Уже существовала) 30220;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;qqq (Уже существовала) 20300;www (Уже существовала) 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;rrr (Уже существовала) 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;ttt (Уже существовала) 20300;yyy (Уже существовала) 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;0 50400;0 20100;uuu (Уже существовала) 20300;iii (Уже существовала) 30100;0 30110;0 30120;0 30130;0 30140;0 30200;0 30210;0 30200;0 30230;0 30240;0 30300;0 30310;0 30320;0 30330;0 30340;0 40100;0 40110;0 40120;0 40130;0 40140;0 40200;0 40300;0 40400;0 40600;0 40610;0 40620;0 40630;0 40700;0 40710;0 40720;0 40730;0 40800;0 40810;0 40820;0 40830;0 50000;0 50100;0 50200;0 50300;ммм (Уже существовала) 50400;0 Добавлено через 6 минут Считается что полный блок информации начинается со строки с номером 20100 и до строки с номером 50400... Так как в исходном файте может существовать только строка с номером 20100, а другие могут отсутствовать, то неободимо их как раз и добавить... Я понимаю что цикл, но как не могу понять..((
0
|
||
|
1 / 1 / 0
Регистрация: 20.04.2013
Сообщений: 9
|
|
| 06.09.2013, 09:34 [ТС] | |
|
Проблема решена совсем иначе... (через базы данных)...
Всем спасибо))
0
|
|
| 06.09.2013, 09:34 | |
|
Помогаю со студенческими работами здесь
4
добавление триггера к существующему шаблону Добавление компонента на форму по шаблону
Добавление текста к картинке-шаблону и сохранение результата Разбиение строк по шаблону Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки 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.
На борту пять. . .
|
Камера 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. Пошагово создадим проект для загрузки изображения. . .
|