本篇主要学习几个正则表达式匹配符:
^
:锚定行首$
:锚定行尾\<
或者\b
:锚定词首\>
或者\b
:锚定词尾\B
:匹配"非单词边界"
下面通过实验彻底掌握:
测试文件内容如下:
cat test.txt
clike
10.213.148.53 1c83-4180-11f9 19 D-0 Eth-Trunk49
10.213.148.55 1c83-417f-f31a 18 D-0 Eth-Trunk48
10.213.148.58 e861-1a1f-f2b1 11 D-0 Eth-Trunk45
10.213.148.59 e861-1a1f-f498 14 D-0 Eth-Trunk44
10.213.148.5 b00c-d13a-8d8d 17 D-0 Eth-Trunk48
筛选以10.213.148.53
开头的行,使用 ^
锚定行首:

筛选以Eth-Trunk48
结尾的行,使用 $
锚定行尾:
使用 ^$
结合筛选空白行 配置 -v
反选可以筛选出非空白的行

筛选以e861
开头的行,使用\<
或者 \b
锚定词首
筛选以8d8d
结尾的行,使用 \>
或者 \b
锚定词尾
筛选以单词e861-1a1f-f498
开头结尾的行,使用"\>e861-1a1f-f498\<"
或者"\be861-1a1f-f498\b"
筛选不以单词10.213.148.5
开头或者结尾的行