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

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

Ответить
Настройки темы
PowerShell - [решено] Как заменить четвертое вхождение в строке

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


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

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


Как в PowerShell заменить определенное вхождение в текстовой строке?
Например, есть строка: "на оборотной стороне ворот втроая строка"
Необходимо получить: "на оборотной стороне ворот вторая строка"
При этом неизвестно сколько слов в строке, но известно что четвертое вхождение "ро" надо заменить на "ор".

Отправлено: 18:15, 25-11-2012

 

Ветеран


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

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


Проверить грамматику в тексте?

Отправлено: 19:56, 25-11-2012 | #2



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

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


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


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

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


Дело не в грамматике.
Код: Выделить весь код
$Line = 'на оборотной стороне ворот втроая строка'
$Pattern = 'ро'
$replace = $Line -replace $Pattern, "($Pattern)"
$replace
на обо(ро)тной сто(ро)не во(ро)т вт(ро)ая ст(ро)ка

Как в четвертом вхождении регулярного выражения поставить Error. Или, например, во втором три звездочки.

Отправлено: 21:18, 25-11-2012 | #3


Ветеран


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

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


"на оборотной стороне ворот втроая строка" -replace "((.*?ро.*?){3})ро",'$1ор'
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:37, 25-11-2012 | #4


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


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

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


Ну не знаю, наверное неудачный пример дал.
Ну хорошо.
Цитата:
.....9.....2.......6......8.....1
..3...5....9....1...2....7....7

точки в строках считать буквами,
как вместо 4 -той по порядку цифры в каждой строке поставить 2012 ?
Добавлено:

Ой, уже ответили, извиняюсь, не обновил страницу.
Kazun, большое спасибо!

Последний раз редактировалось Ortis, 25-11-2012 в 22:01. Причина: Не обновил страницу


Отправлено: 21:54, 25-11-2012 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - как искать в содержимом файлов не "слово или фразу", а "вхождение символов"? w95w7 Microsoft Windows 2000/XP 0 11-10-2011 18:41
Java - Как заменить заменить символ \ на \\ , с помощью replaceall ? Большой Кол Программирование и базы данных 3 29-04-2011 05:37
[решено] Заменить текст в строке внутри символов <> FlatX007 AutoIt 2 03-09-2009 22:14
Доступ - Вхождение по сети на дрйгоу комп: рабочая группа, не доступа! rivera Microsoft Windows 2000/XP 7 26-01-2007 09:02
Выскакивает "вхождение в Инет" при запуске различных прог ab Microsoft Windows 95/98/Me (архив) 16 09-04-2005 21:19




 
Переход