sed忽略大小寫引數 vim 查詢時忽略大小寫

2021-10-17 01:27:09 字數 1304 閱讀 2280

預設情況下 vim 的查詢都是區分大小寫的, 這種查詢方式有利於準確快速的定位到目標, 但是有時候vim的使用者也不一定能夠確認那個單詞的大小寫情況, 這種情況下就要用到大小寫忽略了.

實現這個操作有兩種方式.

方式1 指令設定:

:set ic(ignorecase 的縮寫) 忽略大小寫

:set noic(noignorecase 的縮寫) 不忽略大小寫

輸入了上述指令, 當每次的查詢操作都會受到當前設定的影響,不過每次在退出vim編輯後,再重新開啟以後的設定仍舊失效。

注:編輯狀態下的設定相當於臨時修改了vim的環境變數,當重新使用vim時,其又會預設的.viminfo檔案中讀入預設的環境變數設定 。

方式2 查詢符號設定:

/\cword 區分大小寫的查詢

/\cword 不區分大小寫的查詢

這個操作針對當前的查詢有效, 所以不必考慮下次查詢操作是否會受到影響.

對grep sed awk工具忽略大小寫的擴充套件

談到vim對文字的處理,不自覺的就聯想到以上三個工具對文字的處理。現對此做下對比。首先是grep對忽略大小寫的處理,這個最簡單,直接在-i引數即可:

-i, --ignore-case ignore case distinctions

接下來是sed對文字忽略大小寫的處理。這個要稍微麻煩些。不過在sed的幫助文件中還是找到下面一段:

imatch regexp in a case-insensitive manner.

(this is a gnu extension.)

從上面這段幫助上不難看出,使用大寫i可以進行大小寫忽略處理。下面使用兩個簡單的示例說明下。如我有如下乙個文件:

[root@gateway2 ~]# cat a.txt

aaaa

bbcc

然後通過sed可進行如下處理[root@gateway2 ~]# sed -n '/aa/ip' a.txt

aaaa

//d引數為刪除

[root@gateway2 ~]# sed -e '/aa/id' a.txt

bbcc

最後是awk對忽略大小寫的處理。awk在這方面做的也比較好,其內建了乙個ignorecase變數,專門用於處理大小寫的忽略。當ignorecase的值為真時,則進行忽略大寫的匹配。示例如下:

[root@gateway2 ~]# cat a.txt |awk '/aa/' ignorecase=1

aaaa

本處仍使用的上面的a.txt

另乙個示例:echo "mary" | awk 'begin}'

該示例的輸出結果是mary

MySQL查詢忽略大小寫

離離原上草,一歲一枯榮 在mysql中,有可能會遇到查詢大小寫的問題.這個時候可以修改欄位的排序規則來達到忽略大小寫的目的 或者用alert語句修改也可以 alter table tablename modify column columnname varchar 50 character set ...

讓Vim查詢字元忽略大小寫

vim預設是對大小寫敏感的,下面是讓vim忽略大小寫的幾種方法 set ignorecase 再查詢 include 現在它將匹配 include include 和 include set noignorecase 讓我們保留這個設定,並查詢 include 它匹配的文字就跟查詢 include ...

MSYQL忽略大小寫

linux下mysql預設是要區分表名大小寫的。mysql是否區分大小寫設定是由引數 lower case table names決定的,其中 1 lower case table names 0 區分大小寫 即對錶名大小寫敏感 預設是這種設定。這樣設定後,在mysql裡建立的表名帶不帶大寫字母都沒...