Блокнот ++ - Как я могу искать (по строке) до определенного символа (в указанной строке)?


0

У меня есть несколько строк, которые выглядят как

\node[ ... Some code here ... { ... some more code
\node[ ... Some code here ... { ... some more code
\node[ ... Some code here ... { ... some more code

В каждой строке я хотел бы заменить код с [на {мой собственный код.

  • \node всегда в начале каждой строки.

  • {это не в конце строки.

Я уже нашел (здесь) и попробовал такие вещи, как ^\\node.*\{или \\node.*\{, но оба дают одинаковый неудовлетворительный результат: весь код до самого последнего {в документе помечается.

Ответы:


0

На самом деле, вполне нормально включить Wrap вокруг. На самом деле, я предлагаю вам сделать.

Поскольку фрагмент гарантированно находится в начале строки, вы можете использовать привязку caret ( ^).

Следующие работы для меня:

Найти ^\\node\[[^{]*\{:; Заменить:\\node[test{

В ^анкеров к началу строки. \\node\[соответствует тексту \node[после экранирования специальных символов. [^{]*захватывает каждого персонажа, кроме открытой фигурной скобки. (Обратите внимание, что здесь {не нужно экранировать, потому что он находится в классе персонажа.) Затем \{берет саму открытую фигурную скобку.


Если ... Some code here ... может содержать фигурные скобки:

Найти ^\\node\[.*\{([^{]*)$:; Заменить:\\node[test{$1

Первая часть такая же. Затем .*будет соответствовать как можно большему количеству символов. \{соответствует открывающей скобке, затем ([^{]*)$сопоставляет и захватывает все символы до конца строки. Поскольку [^{]он указан, он не будет соответствовать никаким открывающим скобкам, поэтому предыдущий \{должен соответствовать последнему {в строке.


1

В диалоговом окне «Поиск / замена» с помощью команды Найти что: узел [. * { И Заменить на: узел [тест { успешно заменяет ... Некоторый код здесь ... с тестом в каждой строке.

Вы должны указать следующие параметры:

  • НЕ ставьте галочку "Обернуть вокруг"
  • Галочка "Регулярное выражение"
  • НЕ ставьте галочку ". Соответствует новой строке" введите описание изображения здесь

Хотя немного запоздало: не сработало. : / imgur.com/9DcCORg
Генри
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.