Я знаю, что для поиска целого слова я должен использовать /\<mypattern\>
. Но это не так для символа тире (+ U002d), и /\<-\>
всегда дает сбой. Я также пытаюсь /\<\%d45\>
, и это тоже не получается. кто-нибудь знает причину?
Edit2: Поскольку упомянутое @bobbogo дефис не в 'iskeyword', поэтому я добавляю :set isk+=-
и /\<-\>
works!
Edit1: Я думаю, что в Vim /\<word\>
действителен только для буквенно-цифровых символов, и мы не должны использовать его для знаков пунктуации (см. Edit2). Я должен изменить свой вопрос и спросить, как мы можем искать знак пунктуации во всем мире, например, я хочу, чтобы мой поиск нашел знак вопроса в "a? B" и шаблоны типа "??" и "abc?" не должно быть действительным.