Как бы вы заменили только один символ в середине текста дубликатами? - PullRequest
0 голосов
/ 09 июля 2019

В последнее время я везде искал, чтобы выяснить, как использовать регулярные выражения в Notepad ++, потому что я слышал, что это полезно для форматирования, не переходя к каждой строке и не тратя время на замену чего-либо.

Япытаясь заменить один символ, который он находит в каждой строке, за исключением дубликатов

Я пробовал много методов в Интернете, в Интернете нет ответа до того, что я ищу

test1:_|TEST:-TEST.|
test2:_|TEST:-TEST.|
test3:_|TEST:-TEST.|

Как показано в коде теста, есть два двоеточия;Я пытаюсь заменить первое двоеточие на;и НЕ второй;результат выполнения мной регулярного выражения должен быть таким:

test1;_|TEST:-TEST.|
test2;_|TEST:-TEST.|
test3;_|TEST:-TEST.|

Ответы [ 2 ]

1 голос
/ 09 июля 2019

Это сделано так

Найти (?m)^[^:\r\n]*\K:
Заменить ;

https://regex101.com/r/rT1vG9/1

0 голосов
/ 09 июля 2019

Я предполагаю, что, возможно, это выражение,

(\w+)\s*(?::)(\s*_\s*\|\s*\w+\s*:\s*-\w+\.\|)

с заменой $1;$2 может работать.

DEMO 1

Или с меньшими границами, это выражение:

([^:]+):(.*)

с такой же заменой.

DEMO 2

...