Найти и заменить Android-студию


271

Есть ли способ найти и заменить все вхождения слова во всем проекте (а не только в одном классе, использующем refactor -> rename), а также поддерживать регистр, либо в Android Studio, либо с помощью сценария командной строки?

Например, Поставщик должен перейти к Продавцу, поставщик -> продавец, ПОСТАВЩИК -> ПОТРЕБИТЕЛЬ. Мой начальник хочет, чтобы я сменил всех поставщиков на продавца, над которым я работаю. Я делал это в течение часа, и я знаю, что я трачу свое время. Дайте мне знать о любых предложениях по экономии времени.


1
Один из способов сделать это - щелкнуть правой кнопкой мыши в решении по структуре папок и там выбрать заменить в пути.
Йохан

Ответы:


543

Я думаю, что ярлык, который вы ищете, это:

Ctrl+ Shift+ Rв Windows и Linux / Ubuntu

Cmd+ Shift+ Rв Mac OS X

ссылка: источник


4
Я на OS X, и это было все еще Ctrl + Shift + R
CodyMace

3
Это сработало чудесно! Мне пришлось переименовать класс целиком, включая комментарии, геттеры, сеттеры, конструкторы, новые вызовы, РАБОТЫ, но рефактор андроид-студии не давал мне покоя. Ctrl + Shift + R, однако, проигнорировал все это и жестко изменил файлы, после которых проект должен был быть перезагружен. Выберите «сохранить дело», иначе все испортится.
G_V

4
в OS X по крайней мере для меня была Command вместо Ctrl. Просто для новых пользователей Mac - Android Studio.
karvoynistas

4
У меня больше не работает. Я думаю, что этот ярлык был удален. Кто-нибудь еще видел то же самое? Правка> Найти> Заменить в пути все еще там, конечно.
Да-Цзинь,

1
также Ctrl + Shift + Rдля Ubuntu (Linux)
Морозов

82

В Windows :

Найти: Ctrl+F

Найти и заменить в одном классе: Ctrl+R

Найти и заменить во всем проекте: Ctrl+ Shift+R

на OS X похоже, просто замени CtrlнаCommand


44

В Android студии Edit -> Find -> Replace in path, это проверит весь проект, включая комментарии и код.


Это правильный ответ в Android Studio на macOS. Единственный полный проект поиска / замены подметальной машины.
the_dude_abides

12

Если вы используете refactor-> rename для имени файла, везде, где файл используется в вашем проекте, рефактор заменит его.

Я уже переименовал переменные, XML-файл, Java-файл, несколько Drawable и после операции я мог построить напрямую без ошибок.

Сделайте резервную копию вашего проекта и попробуйте посмотреть, работает ли он для вас.


3
Ярлык по умолчанию для переименования - Shift + F6. ;-)
Калашни

12

Нажмите Ctrl+, Rчтобы найти и заменить коды в классе, где вы находитесь ...






1

Я думаю, что в предыдущих ответах пропущен самый важный (нетривиальный) аспект вопроса ОП, а именно, как выполнить поиск / замену «экономя время», то есть один раз , а не три раза, и изначально «поддерживать дело» изначально настоящее время.

На панели установите флажок « [X] Сохранить регистр », прежде чем нажимать кнопку «Заменить все».

Это выполняет "умную" замену с учетом регистра за один проход:

apple -> orange
Apple -> Orange
APPLE -> ORANGE

Кроме того, для спокойствия не забудьте проверить код в VCS перед выполнением широких замен для всего проекта.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.