一、元字符的定义
元字符是这样一类字符,它们表达的是不同于字面本身的含义
shell 元字符(也称之为通配符) 由 shell 解析,如 rm -rf .txt,元字符,shell 将其解析为任意多个字符
正则表达式元字符 由各种执行模式匹配操作的程序来解析,比如 vi,grep,sed,awk,python
二、正则表达式元字符
2.1 正则表达式元字符
元字符 | 功能 | 示例 |
---|---|---|
^ | 行首定位符 | ^love |
$ | 行尾定位符 | love$ |
. | 匹配单个字符 | l..e |
* | 匹配前导符 0 到多次 | lov*e |
.* | 任意多个字符 | lov.* |
[] | 匹配指定范围内的一个字符 | [IL]ove |
[-] | 匹配指定范围内的一个字符 | [a-zA-Z0-9] |
[^] | 匹配不在指定组内的字符 | [^0-9a-z]ove |
\ | 用来转移元字符 | love\. |
< | 词首定位符 | \<love |
> | 词尾定位符 | love\> |
(..) | 匹配稍后使用的字符的标签 | :%s/\(172.\)\(16.\)\(130.\)1/\1\2\35/ |
x\{m\} | 字符 x 重复出现 m 次 | o\{5\} |
x\{m,\} | 字符 x 重复出现 m 次以上 | o\{5,\} |
x\{m,n\} | 字符 x 重复出现 m 到 n 次 | o\{5,10\} |
2.2 扩展正则表达式元字符
元字符 | 功能 | 示例 |
---|---|---|
+ | 匹配一个字符或多个前导字符 | [a-z]+ove |
? | 匹配零个或一个前导字符 | lo?ve |
a|b | 匹配 a 或 b | love|hate |
() | 组字符 | love(able|rs)ov+ |
(..)(..)\1\2 | 标签匹配字符 | (love)able\1er |
x{m} | 字符 x 重复 m 次 | o{5} |
x{m,} | 字符 x 重复至少 m 次 | o{5,} |
x{m,n} | 字符 x 重复 m 到 n 次 | o{5,10} |
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于