При помещении содержания примеров в текстовом файле, Вы видите почему grep
соответствует ему:
$ grep -E '[0-9]{1}' file.txt
touch 1
touch 22
touch 333
Можно использовать границы слова (-w
) сказать grep
то, что Вы хотите только распознать отдельное слово своего regex (\<REGEX\>
) вместо любой строки, которая, оказывается, соответствует ему:
$ grep -Ew '\<[0-9]{1}\>' file.txt
touch 1
$ grep -Ew '\<[0-9]{2}\>' file.txt
touch 22
$ grep -Ew '\<[0-9]{3}\>' file.txt
touch 333
\<
и \>
сказать grep
где границы. Это вызывает grep
для распознавания явных слов такой как 1, но не строки такой как 11, 111, или aa11aa, начиная с, regex в этих строках не содержится границами слова.
Когда GVIM запускается, он источнил файл под названием Mswin.Vim
через файл _VIMRC
. В файл mswin.vim
ключи перегружаются. Вы можете отменить это два способа. Один изменит файл mswin.vim
и удалить отображение (не рекомендуется). Вторым проще потенциально менее инвазивный способ - редактировать файл _VIMRC
.
1. Start gvim as Administrator.
2. Click Edit->Startup Settings (This will load the _vimrc file)
3. The beginning of the file will look something like this.
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
4. Delete the line that sources mswin.vim and sets mswin behavior and change set nocompatible to set compa`enter code here`tible. The end result will look something like this.
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
Это должно исправить вашу проблему.
Если вы хотите, чтобы это ведут себя больше похоже на VI, чем VIM, вы можете изменить NoCompitable
на Совместимо