Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Обработка текста между двумя заданными наборами символов

Ответить
Настройки темы
CMD/BAT - [решено] Обработка текста между двумя заданными наборами символов

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: konatash@vk
Дата: 11-12-2020
Необходимо отредактировать строки в txt файле.
Пример:

какой-либо текст
{i} текст {/i}
текст
{i} какой-либо текст
текст
текст {/i}

Где символы {i} означают начало блока, а {/i} - конец, и всегда находятся в начале и в конце строки соответственно.
При этом символы {i} и {/i} нужно проставить в каждом существующем блоке так, чтобы разделить их на несколько самостоятельных блоков. То есть чтобы каждая строка в блоке начиналась на {i}, а заканчивалась на {/i}.
Должно в итоге получиться так:

какой-либо текст
{i} текст {/i}
текст
{i} какой-либо текст {/i}
{i} текст {/i}
{i} текст {/i}

Решить данную проблему самостоятельно не получается. Заранее спасибо.

Отправлено: 22:33, 10-12-2020

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


konatash@vk, если это реальная потребность — давайте а) сам исходный файл, б) результирующий файл, упаковав их в архив.

Отправлено: 22:44, 10-12-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Fors1k

Старожил


Сообщения: 193
Благодарности: 112

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
param(
    $pathIn  = "C:\file.txt",
    $pathOut = "C:\file1.txt"
)cls

$text = gc $path -raw
(($text|sls '{i}(\s|\S)*?{/i}'-a).Matches.value)|%{
    $text = $text -replace $_,
    ($_-replace"`r`n"," {/i}`r`n{i} ")
}
$text|Out-File $pathOut

Последний раз редактировалось Fors1k, 11-12-2020 в 01:54.

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:48, 11-12-2020 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Обработка текста между двумя заданными наборами символов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
PowerShell - Select-String. Парсинг нескольких значений между наборами символов. rango13 Скриптовые языки администрирования Windows 8 15-10-2021 16:08
PowerShell - Обработка путей превышающих 260 символов pogo Скриптовые языки администрирования Windows 12 30-12-2015 14:31
Замена текста между двумя подстроками-границами, регулярные выражения в Perl Тишина Программирование в *nix 2 11-08-2014 18:59
[решено] Разница между импульсным и тоновым наборами номеров Казбек Хочу все знать 10 02-06-2012 11:30
PHP и XML | Обработка неалфавитных символов Coutty Вебмастеру 6 17-12-2008 10:42




 
Переход