2016-07-27 25 views
0

У меня есть этот текст:Регулярное добавление персонажа на n-ое место?

1111111111111111111111111111111111111111111111111 

где мне нужно добавить символ в пятой позиции, чтобы иметь этот результат

11111A11111111111111111111111111111111111111111111 

Я попытался с

(?<=.{5}) 

Заменить

A 

он помещает A после пятого символа, но продолжает рекламировать каждые пять следующих символов.

Я использую Powergrep. Как заставить его остановиться после первого появления?

+1

Не знает, как PowerGREP работает, но смотреть на отключение его ** глобального ** Режим. – rgoliveira

ответ

1

Вы можете использовать ^ символ anchor регулярное выражение к началу строки:

(?<=^.{5}) 

См regex tester

+0

Это работает, спасибо. Любой способ расширить это, чтобы он мог добавить символ A на 5-й и 10-й и 20-й позиции? Я пробовал (? <= ^. {5,10,20}), но ничего не меняет. – Jim8645

+1

В этом случае вы не можете работать с '(? <='. Вместо этого запишите цифры и замените их на '\ 1' и т. Д .:' (^. {5}) (. {5}) (. { 10}) '=>' \ 1A \ 2A \ 3A' (https://regex101.com/r/bC6rF6/3) – trincot