正則表達式 小結

聽老師和學姐都說,正則表達式很重要,所以這次我總結一下,同時加強一下記憶。

目前我們學的正則表達式有:字符匹配;匹配字數;位置錨定。

:. 匹配任意單個字符
 [] 匹配指定范圍內的任意單個字符
 [^] 匹配指定范圍外的任意單個字符
 [:alnum:] 或 [0-9a-zA-Z]
 [:alpha:] 或 [a-zA-Z]
 [:upper:] 或 [A-Z]
 [:lower:] 或 [a-z]
 [:blank:] 空白字符(空格和制表符)
 [:space:] 水平和垂直的空白字符(比[:blank:]包含的范圍廣)
 [:cntrl:] 不可打印的控制字符(退格、刪除、警鈴…)
 [:digit:] 十進制數字 或[0-9]
 [:xdigit:]十六進制數字
 [:graph:] 可打印的非空白字符
 [:print:] 可打印字符
 [:punct:] 標點符號

. 匹配任意單個字符
正則表達式 小結正則表達式 小結

 [] 匹配指定范圍內的任意單個字符

正則表達式 小結
正則表達式 小結

 [^] 匹配指定范圍外的任意單個字符
正則表達式 小結

 [:alnum:] 或 [0-9a-zA-Z]
[:alpha:] 或 [a-zA-Z]

 [:digit:] 十進制

正則表達式 小結

 [:upper:] 或 [A-Z]
[:lower:] 或 [a-z]
正則表達式 小結

匹配次數:

*匹配前面的字符任意次,包括0次

.*任意長度的任意字符

\?匹配其前面的字符0或1次

\+匹配其前面的字符至少1次

正則表達式 小結

\{n\}匹配前面的字符n次

\{m,n\}匹配其前面的字符至少m次最多n次正則表達式 小結

位置錨定:

^行首錨定,用于模式的最左側正則表達式 小結

$行尾錨定,用于模式最右側

正則表達式 小結

給給定字符著色

正則表達式 小結

alias grep=’grep –color=auto’ 給所選中的項著色
   
    grep -v root /etc/passwd :反選,除了root都顯示
   
    grep -i root /etc/passwd :不區分大小寫
   
    grep -o root /etc/passwd :只顯示root

    grep -c root /etc/passwd :只顯示匹配到結果的行數

    grep -A 3 root /etc/passwd :顯示root后3行

    grep -B 3 root /etc/passwd :顯示root前3行

    grep -C 3 root /etc/passwd :顯示root前后3行

    grep -e root /etc/passwd :同時搜索多個關鍵字
例子:
    grep -e root -e meng1 /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    operator:x:11:0:operator:/root:/sbin/nologin
    meng1:x:509:512::/home/meng1:/bin/bash
    rooter:x:511:514::/home/rooter:/bin/bash

    grep -E root /etc/passwd :使用擴展正則表達式,或egrep

    grep -W root /etc/passwd:僅顯示匹配關鍵字所在行

    grep -F root /etc/passwd :不使用擴展正則表達式
   patch -b 文件1 存放目錄:   使文件1 的內容更新為存放到目錄后新生成的文件


^ []外:以….開頭
    內:非

原創文章,作者:menger,如若轉載,請注明出處:http://www.www58058.com/83458

(0)
mengermenger
上一篇 2017-07-30
下一篇 2017-07-31

相關推薦

  • 磁盤管理及shell腳本編程練習

    1、創建一個10G分區,并格式為ext4文件系統 a)?要求其block大小為2048,預留空間百分比為2,卷標為MYDATA,默認掛載屬性包含acl; ~]# mke2fs –t ext4 –b 2048 –m 2 –L MYDATA? /dev/sda3 b)?掛載至/data/madata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; ~…

    2017-11-15
  • 第六周-Vim、計劃任務及Shell腳本練習

    一、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit 末行模式輸入 :%s@^[[:space:]]\+@#&@g 二、復制/boot/grub/grub.co…

    Linux干貨 2017-08-13
  • 基礎腳本編程練習題

        Shell腳本其實就是以一系列命令組合起來的文本文件,這些命令組合起來完成一個或者一項功能。因為Shell似乎是各UNIX系統之間通用的功能,并且經過POSIX(表示可移植操作系統接口Portable Operating System Interface of UNIX,縮寫為 POSIX)的標準化。因此,Sh…

    2017-08-05
  • N21-北京-兔鍋-馬哥教育網絡班21期+第3周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。    who | cut -d' ' -f1 | uniq   2、取出最后登錄到當前系統的用戶的相關信息。    who | ta…

    系統運維 2016-07-07
  • Linux基礎 文件系統目錄標準FHS

    概述 本文前半部分介紹了 Linux 文件系統目錄標準 FHS (Filesystem Hierarchy Standard)。后半部分整理了個人學習 Linux 過程中涉及到的部分文件和路徑,激勵自己堅持更新,以期完善。 背景 由于Linux是遵循開源協議,任何人都可以根據Linux的核心代碼制作和發行版本。如果每個人都按自己的喜好,在/目錄下創建目錄、存…

    Linux干貨 2016-08-07
  • 第十八周作業

    1、為LNMP架構添加memcached支持,并完成對緩存效果的測試報告; 環境準備: 1)LNMP(php-fpm)環境已搭建完畢 2)Wordpress已部署完成 1.在memcache服務器上安裝memcached包并啟動服務 ]# yum install memcached -y ]# systemctl start memcached.servic…

    2017-06-22
欧美性久久久久