Подтвердить что ты не робот

Регулярное выражение для замены "{" на "(новая строка) {" в xcode

Мне нужно изменить стиль кодирования, чтобы положить открывающиеся фигурные скобки в одной строке на новую строку. Мне нужно найти и заменить (пробел) {с помощью (новой строки) {. Я слышал, как использовать регулярное выражение find и replace, его довольно просто.

Может ли кто-нибудь помочь мне в этом?

4b9b3361

Ответ 1

Вы можете попробовать следующее:

  • В поле "Найти" введите space \ { $
  • В поле "Заменить" введите control+q return {

control+q необходим для цитирования возвращаемого ключа. Нет визуальной обратной связи для ввода control+q return, поэтому единственным видимым символом в поле замены является открывающая фигурная скобка:

Screenshot Find & Replace

Несмотря на то, что это отвечает на ваш вопрос, theres (по крайней мере!) одна проблема: она не будет отступать от фигурной скобки, поэтому что-то вроде

- (void)method {
    for (obj in collection) {
        NSLog(@"%@", obj);
    }
}

преобразуется в

- (void)method
{
    for (obj in collection)
{
        NSLog(@"%@", obj);
    }
}

Пункт меню "Редактирование" > "Формат" > "Отступ" поместит открытые фигурные скобки на правильную вкладку отступа, но в вашем стиле кода могут быть нежелательные побочные эффекты.


Изменить:, как прокомментировано в другом ответе, вам может понадобиться регулярное выражение, которое соответствует произвольному количеству пробелов, окружающих фигурные скобки, например. \S * {\ с * $

Ответ 2

найдите \s\{ и замените на \n\{

Ваш редактор должен поддерживать регулярные выражения в обоих полях поиска и замены. Если вы не можете использовать \n в диалоговом окне замены, потому что он принимает строку буквально, попробуйте ввести параметр, а затем {, который работает в большинстве редакторов, которые я пробовал.

  • \s - это пробельный символ (если может быть больше пробелов, которые вы можете использовать \s+)

обратите внимание, что он должен быть \s+ вместо \s*, поскольку кто-то исправлен, потому что действительно \s* также совпадает, если нет места.

  • \{ нужна обратная косая черта, потому что {
    необходимо избегать, поскольку у него есть другой значение в регулярном выражении
  • \n для новой строки

Лучше всего было бы переформатировать ваш код, где вы решите иметь свой { в новой строке. Большинство редакторов позволяют вам устанавливать эти параметры.

Другой способ - использовать декодер кода, вы можете использовать это в Интернете, а некоторые позволяют изменять такие настройки.

Ответ 3

Вы можете использовать [\n\r] для описания newline Это позор, я столкнулся с этим, когда я нажимаю значок лупы рядом с панелью поиска, находя что-то в одном файле.

Чтобы увидеть несколько других выражений:

  • перейти в файл
  • do cmd + f и открыть поиск
  • нажмите на значок лупы в левой части поля поиска вверху
  • вы можете увидеть другие выражения в выпадающем меню

Ответ 4

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

Ответ 5

Просто скопируйте пример нужной строки замены (новая строка или еще) из кода в поле замены.