ITPub博客

首页 > > > shell正则表达式1

shell正则表达式1

作者:longmanma 时间:2019-12-10 11:20:44 0 删除 编辑

正则表达式

正则表达式介绍

特殊字符

POSIX特殊字符

一、正则表达式介绍

正则表达式是一种文本模式匹配,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。它是一种字符串匹配的模式,可以用来检查一个字符串是否含有某种子串、将匹配的子串替换或者从某个字符串中取出某个条件的子串。

正则表达式就像数学公式一样,我们可以通过正则表达式提供的一些特殊字符来生成一个匹配对应字符串的公式,用此来从海量数据中匹配出自己想要的数据。

正则表达式是一个三方产品,被常用计算机语言广泛使用,比如:shell、PHP、python、java、js等!

shell也支持正则表达式,但不是所有的命令都支持正则表达式,常见的的命令中只有grep、sed、awk命令支持正则表达式。

特殊说明

测试数据: #cat file

ac

ab

abbc

abcc

aabbcc

abbbc

abbbbbc

acc

abc

asb

aa

bb

a_c

aZc

aAAAAc

a c

ABC

ccc

dddd

http://www

abababab

c c d

123

a3c

e*f

二、特殊字符

定位符使用技巧:同时锚定开头和结尾,做精确匹配;单一锚定开头和结尾,做模糊匹配。

定位符说明

^锚定开头 ^a 以a开头 默认锚定一个字符

$锚定结尾 a$ 以a结尾 默认锚定一个字符

测试案例

1)精确匹配 以a开头c结尾的字符串

[root@www ~]# egrep "^ac$" file

ac

2)模糊匹配 以a开头

[root@www ~]# egrep "^a" file

ac

ab

abbc

abcc

aabbcc

abbbc

abbbbbc

acc

abc

asb

aa

a_c

aZc

aAAAAc

a c

abababab

a3c

3)模糊匹配 以c结尾的字符串

[root@www ~]# egrep "c$" file

ac

abbc

abcc

aabbcc

abbbc

abbbbbc

acc

abc

a_c

aZc

aAAAAc

a c

ccc

a3c

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2730/viewspace-3159677/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-12-18

  • 博文量
    492
  • 访问量
    11988