正则表达式
1 // 写在两个斜杠中间
/abc/ 表示abc 连续出现
xxabcxx
add (X)
awk '/abc/{print $0}' data.txt
2 . /a.c/ (. 代表任意一个字符)
axc
a.c
abbc (X)
3 \ /a\.c/ 只匹配 a.c \ 为转义字符
cca.ccc
匹配 a/c 的话 同样需要 转义字符
4 ^ & 开始 和 结尾
/^abc/ 以abc开始的
/abc$/ 以abc结尾的
5 [] a[abc]c []表示其中的任意一个
xxabcxx
xxaacxx
xxaccxx 均可以
xxabbcxx 则不可以
a[a-z]b ab 之间有a到z一个小写的 之间的字母均可
a[a-zA-Z]b ab 之间有a到z一个小写的 或大写 之间的字母均可
a[^a-z]b ab 之间有不是一个 a到z小写的之间的字母均可
6 * 和 +
/a*b/ 表示 匹配b前边有 0-n个a
/a+b/ 表示 匹配b前边有 1-n个a
7 ? 表示前边字母 可以有可以没有
/a?b/
"b"
"ab"
8 {}
/ab{3}c/
匹配 abbbc
/ab{3,4}c/ 匹配3个或者4个b 前后均是a c
/ab{3,10}c/ 匹配3-10个b
/ab{3,}c/ 匹配3-n个b
9 ()
/(ab)+c/ 匹配ab 反复出现 1-n次 最后接c
03-25