一 VI中如何使用正则表达式
使用正则表达式的命令最常见的就是/ (搜索)命令。其格式如下:
/正则表达式
另一个很有用的命令就是 :s(替换)命令,将第一个//之间的正则表达式替换成第二个//之间的字符串。
:s/正则表达式/替换字符串/选项
二、元字符
元字符是具有特殊意义的字符。使用元字符可以表达任意字符、行首、行 尾、某几个字符等意义。
元字符一览
元字符 说明 . 匹配任意一个非空字符,不包括换行符 [abc] 匹配方括号中的任意一个字符。可以使用-表示字符范围,如[a-z0-9]匹 配小写字母和阿拉伯数字。 [^abc] 在方括号内开头使用^符号,表示匹配除方括号中字符之外的任意字符。 \d 匹配阿拉伯数字,等同于[0-9]。 \D 匹配阿拉伯数字之外的任意字符,等同于[^0-9]。 \x 匹配十六进制数字,等同于[0-9A-Fa-f]。 \X 匹配十六进制数字之外的任意字符,等同于[^0-9A-Fa-f]。 \w 匹配单词字母,等同于[0-9A-Za-z_]。 \W 匹配单词字母之外的任意字符,等同于[^0-9A-Za-z_]。 \t 匹配<TAB>字符。 \s 匹配空白字符,等同于[ \t],即空格和Tab \S 匹配非空白字符,等同于[^ \t]。
另外,如果要查找字符 *、.、/等,则需要在前面用 \ 符号,表示这不是元字符,而只是普通字符而已。
元字符 说明 \* 匹配 * 字符。 \. 匹配 . 字符。 \/ 匹配 / 字符。 \\ 匹配 \ 字符。 \[ 匹配 [ 字符。量词
元字符
说明
*
匹配0-任意个
\+
匹配1-任意个
\?
匹配0-1个
\{n,m}
匹配n-m个
\{n}
匹配n个
\{n,}
匹配n-任意个
\{,m}
匹配0-m个
表示位置的符号
元字符
说明
$
匹配行尾
^
匹配行首
\<
匹配单词词首
\>
匹配单词词尾
表示位置的符号 元字符 说明 $ 匹配行尾 ^ 匹配行首 \< 匹配单词词首 \> 匹配单词词尾
例子:
/char\s\+[A-Za-z_]\w*; " 查找所有以char开头,之后是一个以上的空白," 最后是一个标识符和分号
/\d\d:\d\d:\d\d " 查找如 17:37:01 格式的时间字符串
:g/^\s*$/d " 删除只有空白的行
:s/\<four\>/4/g " 将所有的four替换成4,但是fourteen中的four不替换
此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/64795.html