|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Маскирование многострочного текстового файла |
|
|
PowerShell - [решено] Маскирование многострочного текстового файла
|
Новый участник Сообщения: 6 |
Привет.
Есть некий тескстовый файл с неопределенным количеством одинаковых по длине строк. Задача, удалить (или заменить на ***) из каждой строки любые символы с 1 по 8 потом 40 по 248 и т.д. Как бы так регексп написать в реплейсе чтобы любые символы менял именно в нужном месте. Спасибо за помощь, ногами не бить в регекспах дуб дубом... |
|
Отправлено: 23:06, 15-12-2014 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать |
Последний раз редактировалось Kazun, 15-12-2014 в 23:32. Отправлено: 23:24, 15-12-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Цитата Kazun:
Как я понимаю ^ - начало строки . - любой символ {8} - до восьмого по счету, включительно или нет? ^.{8} - это $1? (.{31}) - 31 любой символ пропустить? .{208} - после 31-го символа любые символы до 208 (это получается $2?) Почему получается 208? Это 8+31+208 это 247 откуда ещё единица? Как получается $1$2 - это те символы что не попадают под выражение? Цитата Kazun:
Извиняюсь за занудство, но хочется разобраться чтобы в будущем понимать что к чему. Спасибо. |
||
Отправлено: 12:22, 16-12-2014 | #3 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать .{8} - ровно 8
^.{8} - это $1? - нет (.{31}) - это $1 (символы с 9 по 39) .{208} - ровно 208 (.*) - $2 (оставшиеся символы c 249) 248 - 40 = 208 Как получается $1$2 - это те символы что не попадают под выражение? - Все символы подпадают по выражение, но надо оставить символы,кроме с 1 по 8 потом 40 по 248 |
Отправлено: 12:30, 16-12-2014 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Шаблон:
Примерная строка: Поскольку квантификатор «*» — «жадный», выражение «.*» из п.5 захватит все оставшиеся символы до конца строки. |
|
Отправлено: 13:01, 16-12-2014 | #5 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать в таком случае если у нас строка 473 символа, а нам нужно удалить значения с 1 по 7, с 20 по 283, с 297 по 311, с 326 по 473.
то будет ^.{7}(.{13}).{283}(.{14}).{311}(.{15}).473?, $1$2$3 или я со скобками напортачил? |
Отправлено: 13:10, 16-12-2014 | #6 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать |
Отправлено: 13:20, 16-12-2014 | #7 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать |
Отправлено: 13:39, 16-12-2014 | #8 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать |
Отправлено: 14:00, 16-12-2014 | #9 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Странно, но -replace выводит тоже самое, что и изначально было в строке.
|
Отправлено: 14:46, 16-12-2014 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Замена текстового файла (2) | Snimda | Скриптовые языки администрирования Windows | 1 | 28-10-2013 20:10 | |
CMD/BAT - Сборка текстового файла из содержимого другого текстового файла | icomboy | Скриптовые языки администрирования Windows | 0 | 10-09-2013 15:17 | |
CMD/BAT - Изменение текстового файла | SANIOK_AV | Скриптовые языки администрирования Windows | 0 | 09-11-2012 11:52 | |
CMD/BAT - [решено] Разбивка текстового файла файла | Seryoga204 | Скриптовые языки администрирования Windows | 1 | 04-10-2010 21:19 | |
CMD/BAT - [решено] Как скопировать имя файла из текстового файла в код батника и т.д. | Nun-Nun | Скриптовые языки администрирования Windows | 6 | 13-05-2009 13:28 |
|