您的位置:首页 > 运维架构 > Linux

linux/python正则表达式与通配符的不同

2016-04-28 10:21 621 查看
1、正则表达式在Python中,可以参考此处



2、Linux中的正则表达式与通配符的不同。

首先正则表达式与通配符是完全不一样的东西!

在文本过滤工具里,都是用正则表达式,比如像awk,sed,vi,grep,这些是针对文件的内容的,re是一种字符串处理的表示方式

而通配符多用在文件名上,比如查找find,ls,cp,等等,wtilcard代表的是bash操作接口的一个功能

基本上解释就是通配符是系统命令使用,一般用来匹配文件名或者什么的用在系统命令中,比如在通配符中*可以匹配任意的0个或多个字符。

而正则表达式是操作字符串,以行尾单位来匹配字符串,比如*不能独立使用的,他只匹配任意长度的前面的字符。

》》》》》》》》》》》》

首先来看看Linux中的通配符,下面是鸟哥在私房菜中归纳的:



(注意其中的 ? 在 Python与linux的正则表达式中,均是匹配前一个re字符0次或1次,

在Linux中 ?作为通配符是代表一定有一个字符,正则表达式中与之相近的是 . 这个符号,代表一定有一个任意字符的意思)

另外,Linux正则表达式是以行为单位来处理字符串的行为,而Python是针对整个文本

下面介绍grep:

下图引自鸟哥的Linux私房菜



下面是grep的进阶用法:



下面是一些常用的正则表达式:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: