字符类的搜索:
搜寻test或taste这两个单字:
([] 里面不论有几个字节,他都谨代表某“一个”字节)
-
字符类的反向选择 [^] :
(1)搜索到有 oo 的行,但不想要 oo 前面有 g。
-
字符类的连续:
(1)搜索到有 oo 的行,oo 前面不要有小写字节。
(在一组集合字节中,如果该字节组是连续的,例如大写英文/小写英文/数字等等, 就可以使用[a-z],[A-Z],[0-9]等方式来书写)
(2)取得有数字的那一行。
-
行首与行尾字节 ^ :
(1)行首字符:让 the 只在行首列出。
(2)行首字符:开头是小写字节的那一行列出。
(3)行首字符:开头不是英文字母。
(^ 符号,在字符类符号(括号[])之内与之外是不同的! 在 [] 内代表『反向选择』,在 [] 之外则代表定位在行首的意义)
(4)行尾字符:行尾结束为小数点 (.) 的那一行。
(因为小数点具有其他意义,所以必须要使用转义字符(\)来加以解除其特殊意义!)
(5)找出空白行。
(空白行只有行首跟行尾 (^$))。
-
任意一个字节 . 与重复字节:
.(小数点):匹配单个任意字符;
*(星号):匹配前一个字符零次或多次。
(1)找出 g??d 的字串,亦即共有四个字节, 起头是 g 而结束是 d。
(2)列出有 oo, ooo, oooo 等等的数据, 也就是说,至少要有两个(含) o 以上。
(3)字串开头与结尾都是 g,但是两个 g 之间仅能存在至少一个 o ,亦即是 gog, goog, gooog.... 等等。
(4)找出 g 开头与 g 结尾的行,当中的字符可有可无。
(5)找出『任意数字』的行。
-
限定连续 RE 字符范围 {}:
({ 与 } 的符号在 shell 是有特殊意义的,因此, 我们必须要使用字符 \ 来让他失去特殊意义)
(1)找出两个到五个 o 的连续字串。
(2)找出 g 后面接 2 到 5 个 o ,然后再接一个 g 的字串。
(3)找出2 个 o 以上的 goooo....g 。