正则表达式:强大的模式匹配工具
正则表达式是一种强大的模式匹配工具,可用于在文件或文本编辑器缓冲区中搜索文本。它比 fnmatch(3)
和 glob(3)
函数支持的模式更强大,虽然更难掌握,但在文本搜索中非常有用。
1. 正则表达式基础
- 锚点(Anchors) :正则表达式定义了两个锚点,
^
表示开头,$
表示结尾。例如,使用egrep
命令:
$ egrep '^ftp'/etc/services
ftp-data 20/tcp #File Transfer [Default Data]
ftp-data 20/udp #File Transfer [Default Data]
ftp 21/tcp #File Transfer [Control]
ftp 21/udp #File Transfer [Control]
ftp-agent 574/tcp #FTP Software Agent System
ftp-agent 574/udp #FTP Software Agent System
这里的 ^ftp
表示只选择以 ftp
开头的行。