#c #vim
Вопрос:
В vim определяются ключевые слова с точки зрения языка. Я хочу найти шаблоны, использующие регулярное выражение, только среди этих ключевых слов с точки зрения языка.
Моя первоначальная мотивация заключается в выделении переменных-членов c , которые обычно ставятся с подчеркиванием в конце слова. В приведенном ниже примере я хотел бы выделить только route_graph_
.
auto graph = route_graph_;
auto path = extract_path(route_graph_);
auto local_graph = createLocalGraph();
Моя первоначальная попытка удалась /.*_
, но, очевидно, результат, показанный ниже, был не тем, чего я хотел. Но я думаю, что если бы я мог искать /.*_
только среди ключевых слов, то можно было бы выделить только route_graph_
их .
Ответ №1:
Я не знаю, как подобрать ключевые слова, но вы можете добиться этого, .*
заменив их чем-то более избирательным.
<
и>
сопоставьте границы слов.w*
соответствует словесным символам.
Сложите их вместе, и вы получите:
/<w*_>
Который соответствует только желаемому идентификатору:
Комментарии:
1. См
:help k
.Раздел для сопоставления символов ключевых слов и символов:help i
идентификаторов.