linux中精確匹配如何避免標點符號的影響

2022-10-11 16:30:11 字數 1802 閱讀 9063

001、問題

[root@pc1 test]# ls

a.txt

[root@pc1 test]# cat a.txt ## 測試資料

73 dar 87

32 dar.3

fdgfd dar-5

dgdf dar~df gfdg

df ee.dar

34er fd-dar 767

df df~dar.fd 76

der dar kdf

df afdarikh

76dar kkk ff

dfd fdf dar

[root@pc1 test]# grep

-w "

dar"

a.txt ## -w並不能實現真正的精確匹配

73 dar 87

32 dar.3

fdgfd dar-5

dgdf dar~df gfdg

df ee.dar

34er fd-dar 767

df df~dar.fd 76

der dar kdf

dar kkk ff

dfd fdf dar

[root@pc1 test]# grep "\

"a.txt ## 也不能實現真正的精確匹配

002、解決方法

[root@pc1 test]# ls

a.txt

[root@pc1 test]# cat a.txt

73 dar 87

32 dar.3

fdgfd dar-5

dgdf dar~df gfdg

df ee.dar

34er fd-dar 767

df df~dar.fd 76

der dar kdf

df afdarikh

76dar kkk ff

dfd fdf dar

[root@pc1 test]# grep

"\sdar\s

"a.txt ## 關鍵字加空白符

73 dar 87

der dar kdf

[root@pc1 test]# grep -e "

\sdar\s|^dar\s

"a.txt ## 利用grep擴充套件,增加開頭匹配項

73 dar 87

der dar kdf

dar kkk ff

[root@pc1 test]# grep -e "

\sdar\s|^dar\s|\sdar$

"a.txt ## 增加結尾匹配項

Linux 用sed精確匹配和替換

問題 現有一text.txt文字內容如下 ni hao ma n yin gn n nin 現要用 en 將單個單詞 n 下劃線 替換掉 嘗試的方法一 sed i s n en g text.txt 結果 eni hao ma en yien gen en enien 也就是所有的n字元都被替換,而...

C C 中如何精確計時

給程式計時對於程式設計師來說實在是太重要了,在windows上的那個clock 實在是不夠精確,精度只有10ms,真讓人難過。研究了下windows下使用c c 計時的函式,給大家分享下。主要就是兩個函式的使用。我先把一段可以執行的 貼出來,然後講講這兩個函式。include include int...

Linux程式設計中如何避免出現殭屍程序

比如程序採用exit 退出的時候,作業系統會進行一些列的處理工作,包括關閉開啟的檔案描述符 占用的記憶體等等,但是,作業系統也會為該程序保留少量的資訊,以供父程序使用。例如程序的id號 程序的退出狀態 程序執行的cpu時間等,因而占用了系統的資源。在一種極端的情況下,檔殭屍程序過多的時候,占用了大量...