正向查找/
,反向查找?
正则查找\v
,原义查找\V
1. 大小写敏感设置
:set ignorecase
:set smartcase # 全小写时,忽略大小写;含大写时,区分大小写
元字符 \c(忽略大小写) \C(区分大小写) # 强制执行,优先级最高
2.括号转义
方括号[] -- 不需要
圆括号() -- 左右都转
花括号{} -- 左转右不转
3.正则表达式查找、原义查找
需求:匹配颜色值
body { color: #3c3c3c#; }
a { color: #000EEE#; }
strong { color: #000#; }
一般: /#\([0-9a-fA-F]\{6}\|[0-9a-fA-F]\{3}\)
正则: /\v#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})
需求:匹配"a.k.a"
一般:
/a.k.a -- backward、a.k.a
/a\.k\.a -- a.k.a
原义:/\Va.k.a -- a.k.a
4.圆括号捕获子匹配
需求:匹配重复单词
I love Paris in the the springtime.
解决:/\v<(\w+)\_s\1>
p.s.
1) \_s: 匹配空白字符或换行符
2) % : 使用圆括号,但不捕获其内容
/v%(And|D)rew Neil
定界符
单词定界符: <>
需求:匹配"the"
the problem with these new recruits is that ...
解决:/\v<the>
定界符: \zs \ze
/\v"[^"]+" -- "quoted word"
/\v"\zs[^"]+\ze" -- quoted word
转义字符
正向查找:"/"需要转义
反向查找:"?"需要转义
"\"任何时候都需要转义