歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Vim正則表達式詳解

Vim正則表達式詳解

日期:2017/2/28 14:55:57   编辑:Linux教程

一 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不替換

Copyright © Linux教程網 All Rights Reserved