Поиск простых имен переменных, таких как 'c' или 'x' в Emacs - PullRequest
4 голосов
/ 24 марта 2010

Я часто хочу искать переменные, которые просто называются 'c' или 'count'.

Например

int c, count;

К сожалению, когда я использую пошаговый поиск для «c» или «count», я получаю много ненужных совпадений, таких как «c» в «choice» или «count» в «wordcount», которые меня не интересуют. Я знаю, что Emacs может выполнять i-поиски с регулярными выражениями, но я не знаю правильного регулярного выражения, необходимого для совпадения только с 'c' и 'count'. Эти слова часто окружены любым количеством пробелов. Кто-нибудь знает регулярное выражение, которое я могу использовать, чтобы сузить свой поиск?

Ответы [ 4 ]

7 голосов
/ 24 марта 2010

Используйте isearch-forward-regexp, обычно привязанный к C-M-s , и ищите \bc\b или \bcount\b

6 голосов
/ 24 марта 2010

В Emacs23 есть M-x isearch-forward-word (связано с M-s w ), которое позаботится о границе слова (спереди) для вас.

M-s w count

И еще одно сочетание клавиш для ответа Эндрю Стейна об использовании isearch-forward-regexp - C-u C-s .

2 голосов
/ 24 марта 2010

Вы хотите найти (isearch-forward-regexp) вашу строку с границами слов (\b) по обе стороны:

\bc\b

\bcount\b
0 голосов
/ 21 августа 2011

Другие говорили вам, как искать то, что вы хотите. Вот мой совет: с этого момента просто don't do it - не создавайте потребность для такого поиска.

30 лет назад я перестал использовать имена переменных, такие как x и i. Если переменная не может или не должна быть названа чем-то более полезным, тогда я просто называю это xx или ii.

Этот простой трюк избавляет от большого количества глупых поисков регулярных выражений, таких как (правильно) описанных на этой странице.

И, как правило, нет оправдания для подобных действий. Я думаю, что часто используются отдельные буквы только из-за лени. Но эта практика может означать больше усилий в конце.

Просто предложение ...

(Теперь, очевидно, некоторые буквы не так просто обрабатываются. nn, например, часто встречается в английских словах. Используйте свое суждение.)

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