您好,登錄后才能下訂單哦!
前言
正則表達(dá)式是文本處理領(lǐng)域中的一個強(qiáng)大的工具,它可以讓文本處理的能力呈指數(shù)級的提升,如果一款文本編輯器不支持正則表達(dá)式,那么它就算不上是一個現(xiàn)代化的編輯器,這絕非虛言。
下面這篇文章主要跟大家介紹了關(guān)于Vim查找替換及正則表達(dá)式使用的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面來一起看看吧。
簡單替換表達(dá)式
:[range]s/from/to/[flags]
range:搜索范圍,如果沒有指定范圍,則作用于但前行。
flags 有如下四個選項:
這些選項可以合并使用,如cgi表示不區(qū)分大小寫,整行替換,替換前詢問。
正則表達(dá)式
1、元字符
元字符
元字符 | 說明 |
---|---|
. | 匹配任意字符 |
[abc] | 匹配方括號中的任意一個字符,可用-表示字符范圍。如[a-z0-9]匹配小寫字母和數(shù)字 |
[^abc] | 匹配除方括號中字符之外的任意字符 |
\d | 匹配阿拉伯?dāng)?shù)字,等同于[0-9] |
\D | 匹配阿拉伯?dāng)?shù)字之外的任意字符,等同于[^0-9] |
\x | 匹配十六進(jìn)制數(shù)字,等同于[0-9A-Fa-f] |
\X | 匹配十六進(jìn)制數(shù)字之外的任意字符,等同于[^0-9A-Fa-f] |
\l | 匹配[a-z] |
\L | 匹配[^a-z] |
\u | 匹配[A-Z] |
\U | 匹配[^A-Z] |
\w | 匹配單詞字母,等同于[0-9A-Za-z_] |
\W | 匹配單詞字母之外的任意字符,等同于[^0-9A-Za-z_] |
\t | 匹配<TAB>字符 |
\s | 匹配空白字符,等同于[\t] |
\S | 匹配非空白字符,等同于[^\t] |
一些普通字符需轉(zhuǎn)意
元字符 | 說明 |
---|---|
\* | 匹配* 字符 |
. | 匹配. 字符 |
\/ | 匹配 / 字符 |
\ | 匹配 \ 字符 |
\[ | 匹配 [ 字符 |
\] | 匹配 ] 字符 |
表示數(shù)量的元字符
元字符 | 說明 |
---|---|
* | 匹配0-任意個 |
\+ | 匹配1-任意個 |
\? | 匹配0-1個 |
\{n,m} | 匹配n-m個 |
\{n} | 匹配n個 |
\{n,} | 匹配n-任意個 |
\{,m} | 匹配0-m個 |
表示位置的元字符
元字符 | 說明 |
---|---|
$ | 匹配行尾 |
^ | 匹配行首 |
\< | 匹配單詞詞首 |
\> | 匹配單詞詞尾 |
2、替換變量
在正則式中以\(和\)括起來的正則表達(dá)式,在后面使用的時候可以用\1、\2等變量來訪問\(和\)中的內(nèi)容。
例子
:%s/abc\(.*\)xyz/xyz\1abc/g :%s/\(abc\)\(.*\)\(xyz\)/\3\2\1/g
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。