正则表达式与结合grep、sed(对行处理)、awk(对行分段处理)命令进行搜索及查询使用。
正则表达式字符的讲解:
行首:^ 行尾:$ 于是空白行可用 ^$ 表示。
.表示任意单个字符,*表示0至多个的前一个字符,于是.*可表示成任意零个或多个字符。
[...]中括号内,不论几个字符,都只表示一个字符。
RE字符 | 意义与范例 |
^word | grep -n '^word' regular_express.txt |
word$ | grep -n 'word$' regular_express.txt |
[list] | 从字符集合的RE字符里找出想要的一个字符 |
[n1-n2] | 找出n1-n2内的一个想要字符 |
[^list] | 打出不要的字符串或范围(反向选择) |
\{n,m\} |
找出连续n到m个前RE字符,其它形式\{n,\},如:grep -n 'go\{2,\}g' regular_express.txt |
[:alnum:] | 代表英文大小写字符及数字,即0-9,A-Z,a-z |
[:alpha:] | 代表任何英文大小写字符,即A-Z,a-z |
[:apper:] | 代表大写字符,即A-Z |
[:lower:] | 代表小写字符,即a-z |
[:digit:] | 代表数字而已,即0-9 |