2013-04-25 6 views
1

Есть ли какой-нибудь инструмент, который позволит мне сразу переименовать большое количество имен переменных.Как переименовать сразу несколько имен переменных (c/C++)

У меня есть большое количество переменных, которые я хочу поместить в c-структуру, и поэтому мне нужно будет добавить param. к началу каждого имени, включенного в структуру.

+0

Проверка поиска/замены (все), каждый порядочный (текст) редактор имеет его. :) –

+0

Это позволит мне менять только одну переменную за раз, что займет много времени. – user1164199

+0

совсем нет, любой редактор спуска (vim) может выполнять блокировку и т. Д., Используя регулярное выражение, которое позволяет вам указывать имена переменных без фактического указания их. Какая у вас среда? –

ответ

1

Если вы действительно хотите сделать это сразу, добавьте регулярное выражение в свою расширенную функцию поиска/замены.^(name1 | name2 | name3) $ должен работать. Но не гарантирует, что он не поймает другие вещи, кроме использования переменных (в частности, объявления переменных). Если вы этого хотите, вам придется работать с чем-то вроде инструментария Клана.

+0

Что такое инструмент Клана? – user1164199

+0

http://clang.llvm.org/docs/Tooling.html - это, конечно, большое усилие, так как для этого требуется написать программу, специально предназначенную для вашего использования. –

+0

Это не сработало при попытке использовать только два имени переменной, т. Е.^(Var1 | var2) $. Он не нашел ни одного имени переменной. Я выбрал регулярные выражения в диалоговом окне find/replace в Code Composer Studio 5.3 (eclipse). – user1164199

-1

sed с find, как:

find /path/to/project/root -name "*.[ch]" -exec sed -ri 's/original_name/new_name/' {} \; 
+0

Спасибо, я посмотрю. – user1164199

+1

Заметьте, что 's/car/cat /' превратит 'ковер' в' catpet', так что будьте осторожны! –

+0

Есть ли sed для окон? – user1164199

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