Я хочу удалить весь текст, кроме [
и ]
и что между ними.
Как бы я поступил так в Notepad++?
Пример ввода:
[A B C] bla bla text here [D E F] bla bla text here [G H I] bla bla
bla here [J K L] M N O] bla bla text here [P Q R [S T U] even more bla
Желаемый результат:
[A B C][D E F][G H I]
[J K L] M N O][P Q R [S T U]
Первая строка, в которой квадратные скобки встречаются в [
... ]
совпадающих парах, довольно проста в обращении.
Второй хитрый: я хочу сохранить пары [
... ]
скобок, даже если они содержат другие скобки.
(У меня проблемы с поиском способа описать это точно; см. Примеры.)
Я разработал пару решений, в которых есть правильные случаи:
Ответ 1:
Find what: [^\]]+(\[|$)
Replace with: \1
Gives me:
[A B C][D E F][G H I]
[J K L] M N O][S T U]
Обратите внимание, что этот получает [J K L] M N O]
правильно, но отбрасывает [P Q R
Ответ 2:
Find what: [^\[]*(\[.*?\])[^\[]*
Replace with: $1
Gives me:
[A B C][D E F][G H I]
[J K L][P Q R [S T U]
Этот, наоборот, получает [P Q R [S T U]
право, но отбрасывает M N O]
.
Как я могу получить это, чтобы дать мне то, что я хочу?