深入探索I/O、重定向、管道和过滤器
1. 字符类与自定义正则表达式
在文本处理中,正则表达式是强大的工具。首先,我们来了解一些常见的字符类:
| 字符类 | 描述 |
| — | — |
| [:punct:] | 匹配任何标点符号,如 ‘?’、’!’、’.’、’,’ 等 |
| [:xdigit:] | 匹配任何十六进制字符,例如 [a - fA - F0 - 9] |
| [:cntrl:] | 匹配任何控制字符 |
利用这些字符类和之前学过的元字符、字符范围等概念,我们可以创建自定义的正则表达式。
匹配 mm - dd - yyyy 格式的日期
我们将有效的日期范围设定为从 UNIX 纪元(1970 年 1 月 1 日)到 2099 年 12 月 30 日。下面是具体的正则表达式构建过程:
-匹配有效月份:
-0[1 - 9]匹配 01 到 09 月。
-1[0 - 2]匹配 10、11 和 12 月。
- 使用 ‘|’ 表示匹配左边或右边的表达式。
综合起来,匹配有效月份的正则表达式为0[1 - 9]|1[0 - 2]。
-匹配有效日期:
-0[1 - 9]匹配 01 到 09 日。
-[12][0 - 9]匹配 10 到 29 日。
-3[0