Самый эффективный способ обмена () для {} в VsCode? - PullRequest
2 голосов
/ 07 июня 2019

Я использую код Visual Studio и часто вынужден заменять скобки (<code>) фигурными скобками {<same code>} или наоборот.До сих пор я не нашел способа сделать это, кроме ручного возврата и замены каждого символа.

Есть ли лучший способ?

Ответы [ 2 ]

1 голос
/ 11 июня 2019

Вы можете использовать функцию поиска и замены регулярных выражений в VSCode.

Сделайте эту строку поиска:

(.*)(\()(.*)(\))

Заменить на:

$1{$3}

Пояснение:

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

  2. Первая группа захвата (.*) ищет и захватывает все, что предшествует первому ( символу.

  3. Вторая группа захвата (\() получает левую скобку, которую мы заменим на {. Обратите внимание, что ( экранирован, потому что ( является оператором в регулярном выражении

  4. Третья группа захвата (.*) захватывает все, что находится в скобках - мы вернем это снова.

  5. Последняя группа захвата (\)) захватывает символ ), который мы меняем на }

  6. Итак, группы захвата $2 и $4 содержат символы ( и ), которые мы заменяем буквенными символами { и }. (Если бы мы хотели вернуть точно то, что нашли, мы бы добавили: $1$2$3$4 в качестве текста замены)

Важно:

Обратите внимание (см. Ниже img), что кнопка [.*] нажата (справа от текста поиска)

VSCode Search box showing RegEx button depressed

Эта кнопка [.*] делает поиск регулярным поиском. Убедитесь, что вы сняли его, когда закончите.

Более важно:

Не нажимайте кнопку Replace All - делайте замены один за другим. Это конкретное регулярное выражение не будет корректно заменять многострочный текст внутри паренов. Но для ускорения процесса, твой дядя Боба.

DEMO на RegEx101.com

0 голосов
/ 11 июня 2019

Я только кратко проверил его, но взглянул на расширение Bracketeer .

После установки курсора в любом месте в скобках, которые вы хотите поменять местами, используйте Ctrl - Shift - Alt - K (или более удобное связывание клавиш) для переключения между [], {}, and (). Кажется, он хорошо работает даже с вложенными скобками.

Тестируйте на своем языке - он не поддерживает многие, но может работать для вас (кажется, что пока нет поддержки html). Очевидно, что это работает только для выбранного экземпляра, но не для всего файла, но работает с несколькими курсорами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...