2017-02-20 33 views
1

У меня есть фрагмент кода, где я хочу удалить кавычки вокруг имен свойств.Удаление цитат вокруг текста в IntelliJ (с Regex?)

// Current format 
var user = { 
    'name': 'A', 
    'loggedIn': true 
} 

// Desired format 
var user = { 
    name: 'A', 
    loggedIn: true 
} 

мне удалось найти все места, я желаю, чтобы изменить с этим регулярным выражением:

'(.+)'\: 

Теперь я хочу, чтобы удалить кавычки в этих строках. Я попытался ввести (.+)\: в поле «заменить на», но это не сработало. Есть ли способ сделать то, что я хочу сделать с этим инструментом?

+1

использование '$ 1:' чтобы заменить совпавшие строки. – MohaMad

+0

@MohaMad Ваш комментарий решил мою проблему. Не могли бы вы разместить его в качестве ответа и, может быть, разработать, как это работает? – KWeiss

ответ

1

Find in Path documentation объясняет, как использовать ссылки:

  • , если указать шаблон поиска с помощью регулярного выражения, используйте формат $n в обратных ссылок (для обозначения ранее найденного и сохраненного шаблона).

$1 будет содержать все, что соответствует в круглых скобках, так что ваша строка замены будет выглядеть $1:.

См. Также Regular Expression Syntax Reference.

1

Ваше регулярное выражение совпадает со строками вашего желания, но вы пропустили его с помощью захваченных групп! $1 возвращает первую группу, а второй и третий - $2 и $3 и ....

Дополнительных слова:

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

Я предлагаю использовать это регулярное выражение вместо собственных в общих случаях:.

^\s*(['|"])(.*?)\1\s?: 

и заменить $2: для извлечения строки между «/»

 Смежные вопросы

  • Нет связанных вопросов^_^