Linux-正则表达式

正则表达式分为基础正则表达式扩展正则表达式

在Linux中使用【grep】来实现该功能。

语系对正则表达式的影响

在操作系统中显示的文字其实都是通过编码表显示出来的,在计算机内部都是01表示,而不同的编码,会存在不同的编码顺序。

  • LANG=C
    0 1 2 3 4 … A B C D E … Z a b c d e … z
  • LANG=zh_CN
    0 1 2 3 4 … a A b B c C … z Z

当我们使用 [A-Z]来表示大写字母时,根据以上的两种编码格式,会匹配出不同的字符集,使用C语系的字符集,则会正确的匹配出大写字母,而使用zh_CN则会匹配到小写字母。为了避免这样编码所造成的英文与数字的选取问题。于是正则表达式使用一些特殊符号来匹配这些字符集。

特殊符号代表意义
[:alnum:]表示英文大小写字母及数字
[:alpha:]表示英文大小写字母
[:blank:]表示空格键与Tab
[:cntrl:]表示控制按键,CR,LF,Tab,Del
[:digit:]表示数字
[:graph:]除空白符(空格及Tab)以外的所有按键
[:lower:]表示小字字母
[:print:]表示所有可以被打印的字符
[:punct:]表示标点符号,即(:”‘?!;#$)
[:upper:]表示大写字母
[:space:]表示会产生空白的字符(空格,Tab,CR)
[:xdigit:]表示十六进制的数字字符,即(0-9,A-F,a-f)

扩展正则表达式

RE字符意义
+重复一个或一个以上前一个RE字符
零个或一个的前一个RE字符
|用或的方式找出数个字符串
()找出群组字符串
()+多个重复群组的判别

Tags: grep Linux 正则表达式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值