单个字符串来描述、匹配一系列符合某个语法规则的字符串。一串不包含特殊字符的正则表达式匹配它自己,例如:

^ 匹配一行的开头,例如:^a 会匹配出所有以 a 开头的行

$ 匹配一行的结束,例如:t$会匹配出所有以 t 结尾的行

思考:^$ 匹配什么?^kankan$呢?
答:^$匹配的是文本中所有的空行,^kankan$匹配的是以kankan开头和结尾的行,即该行只有kankan

答:^kankan$匹配的是以kankan开头和结尾的行,即该行只有kankan
修改test.txt文件
kankan hahahaha kankan
kankan

.匹配一个任意的字符,例如

* 不单独使用,他和上一个字符连用,表示匹配上一个字符 0 次或多次,例如

[ ] 表示匹配某个范围内的一个字符,例如
[ ] # 表示匹配某个范围内的一个字符,例如
[6,8] # 匹配 6 或者 8
[0-9] # 匹配一个 0-9 的数字
[0-9]* # 匹配任意长度的数字字符串
[a-z] # 匹配一个 a-z 之间的字符
[a-z]* # 匹配任意长度的字母字符串
[a-c, e-f] # 匹配 a-c 或者 e-f 之间的任意字符

\ 表示转义,并不会单独使用。
由于所有特殊字符都有其特定匹配模式,当我们想匹配某一特殊字符本身时,就会碰到困难。
此时我们就要 将转义字符和特殊字符连用,来表示特殊字符本身,记得加单引号。例如

