awk学习笔记2-基础正则表达式

(一)正则表达式基础

1.重复匹配
*     匹配前面的模式零次或多次/匹配前面那个字符 0 或多次
+     匹配前面的模式一次或多次/匹配前面那个字符 1 次以上
?     匹配前面的模式零次或一次/匹配前面那个字符 0 或一次
{M,N} 匹配前面那个字符至少 M,最多 N 次
{M,}  匹配前面那个字符至少 M 次,最多无限制
{,N}  匹配前面那个字符最多 N 次 (最少当然是 0)。注意,perl 正则不支持这种方式
{M}   匹配前面那个字符正好 M 次


2.字符类
[ ]    匹配括号内的任意一个字符。例如,[abc] 匹配字符 "a""b""c"[^ ]   匹配除了括号内的字符以外的任意一个字符。例如,[^abc] 匹配除了字符 "a""b""c" 以外的任意字符。
\d     任何一个数字字符;
\D     任何一个非数字字符
\w     任何一个字母数字或下划线,等于[a-zA-Z0-9_]\W     相当于[^a-zA-Z0-9_]
\s     任何一个空白字符;
\S     任何一个非空白字符。

3.边界匹配
^    匹配字符串的开头。
$    匹配字符串的结尾。
\b   匹配单词边界。
\B   匹配非单词边界。

4.分组和捕获
( )  用于分组和捕获子表达式。
(?: )用于分组但不捕获子表达式。

5.特殊字符
.    匹配任意单个字符,但不能匹配换行符 \n
\    转义字符,用于匹配特殊字符本身。
|    用于指定多个模式的选择。
^$   它表示匹配空行
.*   匹配任意长度的任意字符,但不能匹配换行符

(二).正则表达式标记

/pattern/flags
标记flags含义描述
iignore- 不区分大小写 将匹配设置为不区分大小写,搜索时不区分大小写: A 和 a 没有区别。
gglobal -全局匹配 查找所有的匹配项。
mmulti line- 多行匹配 使边界字符 ^ 和 $ 匹配每一行的开头和结尾,记住是多行,而不是整个字符串的开头和结尾。
s特殊字符圆点 . 中包含换行符 \n默认情况下的圆点 . 是匹配除换行符 \n 之外的任何字符,加上 s 修饰符之后, . 中包含换行符 \n。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值