正则表达式和通配符的区别

正则表达式和通配符有许多相似的地方,但它们作用、用法、格式有许多差别。

  • 首先通配符是用来匹配文件名的,而正则表达式是用来匹配文本内容的。而且有许多小的地方不一样:
符号正则表达式通配符
*匹配前面符号任意的字符匹配零个或多个字符
centered匹配任何单个字符
[a-z]包含大小写不包含大小写
.*任意长度字符以点号开头的任意字符
\转义-
^行首-
$行尾-
~-当前用户家目录
.任意单一字符普通符号
\<\>锚定单词左右侧-
\?匹配其前面字符1或0次-
\+匹配其前面字符至少一次-

以上是符号之间的一些差别

在正则表达式里有个符号叫单词锚定:\<\>,它是用做单词定界的,那怎么区分单词是不是到了边界呢?
规律:除了字母、数字、下划线、汉字(估计这里面不会出现)都可以作为单词的定界,因为前面它们如果和单词写在一块就会成为单词的一部分,所有不能做为单词定界符号。

#取目录名,而\<做为单词词首定界用的挺巧妙
[root@centos7init3 app]# echo "/etc/init.d/functions" | grep -o "^/.*\<"
/etc/init.d/

小坑:
1. 点号 . 放在[] 里只表示点号,在其他地方要转义
2. grep ‘a\\c’ file #搜索 a\c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值