快捷搜索:  汽车  科技

linux正则表达式教程(linux文本处理之正则匹配)

linux正则表达式教程(linux文本处理之正则匹配)7).* :匹配所有的字符。^.* 任意多个字符开头。6)* :重复0个或多个前面的一个字符,不代表所有。3)^$ :空行4). :表示且只能代表任意一个字符(当前目录,加载文件)5) \ :转译字符,让有着特殊身份的字符,变回原来的字符。

正则表达式

正则表达式就是一套处理大量的字符串而定义的规则和方法。

通过正则表达式这些特殊字符号,可以快速的过滤、替换需要的内容。

linux正则表达式教程(linux文本处理之正则匹配)(1)


基础正则表达式(Basic regular expression)

1) ^ :例如 ^word 以word开头的内容

2)$ :例如 word$ 以word结尾的内容

3)^$ :空行

4). :表示且只能代表任意一个字符(当前目录,加载文件)

5) \ :转译字符,让有着特殊身份的字符,变回原来的字符。

6)* :重复0个或多个前面的一个字符,不代表所有。

7).* :匹配所有的字符。^.* 任意多个字符开头。

8)[abc] :匹配字符集合内任意一个字符[a-z]

9)[^abc] :^在中括号表示非,表示不包含a或者b或者c

10){n m} :前一个字符,重复n到m次

{n } :至少N次,多了不限。

{n} :N次

{ m} :最多m次,少了不限。

注意:grep 要对{转义} \{\} ,egrep (grep -E )不需要转义

grep 命令:

-v 排除匹配的内容

-E 支持扩展的正则表达式

-i 忽视大小写

-o 只显示匹配的内容

--color=auto 显示匹配颜色

-n 显示行号


linux正则表达式教程(linux文本处理之正则匹配)(2)

测试

测试内容:

word1

word2word3word4word5

word1word1word1word1

ppppppp

ptp

获取空行(加上-n查看空行是哪几行):

grep -E -n '^$' /tmp/1.txt

结果:

5:

获取以w开通的行:

grep --color=auto -E '^w' /tmp/1.txt

结果:

word1

word2word3word4word5

word1word1word1word1

获取以1为结尾的行:

grep --color=auto -E "1$" /tmp/1.txt

结果:

word1

word1word1word1word1

linux正则表达式教程(linux文本处理之正则匹配)(3)

猜您喜欢: