基础正则表达式元字符有哪些,怎么应用
Admin 2022-07-30 群英技术资讯 567 次浏览
POSIX规范制订了两种标准的正则表达式语法,一种是基本正则表达式,一种扩展正则表达式。这两中正则表达式的元字符组成略有不同。本节来学习基础正则表达式元字符。
基础正则表达式元字符
符号“*”用于匹配前导字符0次或多次,具体示例如下:
hel*o
以上示例中“*”符号之前是普通字符l,“*”符号就表示匹配l字符0次或多次,字符串helo、hello、hellllllo都可以与hel*o匹配。
符号“.”用来匹配任意除换行符“\n”外任意的单个字符。当正则表达式中出现“.”符号时,意味着该位置应有一个字符,具体示例如下:
..U73.
“.”只能匹配一个字符,因此上述字符串表示前两个字符是任意字符,第3~5个字符是U73,最后一个字符也是任意字符。字符串MHU73、4JU73H等都可与..U73.匹配。
符号“^”用来匹配行首字符,表示行首字符是“^”后面那个字符。例如列举出/etc目录下以字符串“sys”开头的文件,可以使用如下命令:
[itheima@localhost ~]$ ls /etc | grep "^sys" sysconfig sysctl.conf sysctl.d systemd system-release system-release-cpe
注意:
尽管以上示例匹配的是以字符串“sys”开头的内容,但读者应理解为匹配以字符“s”开头,第二、第三个字符依次为“y”和“s”的行,这种理解方式更符合正则表达式的思维,。这种思维在学习正则表达式时非常重要,读者应熟练掌握。
行尾定位符“$”用来匹配文本行末尾的字符,与“^”符号的作用正相反。例如查找/etc目录下以conf结尾的文件,可以使用如下命令。
[itheima@localhost ~]$ ls /etc | grep cof$ asound.conf autofs.conf autofs_ldap_auth.conf brltty.conf cgconfig.conf cgrules.conf cgsnapshot_blacklist.conf ......
同样,读者在理解行尾定位符的时候也应该从字符的角度去理解,即“conf$”匹配的是以“conf”以字符“f”结尾,同时倒数第2~4个字符依次为“n”、“o”、“c”的文本行。
“[]”符号的功能比较特殊,它是用来指定一个字符集合的,其基本语法如下:
[abc]
其中a、b和c表示任意单个字符,只要某个字符串在方括号所在的位置出现了方括号中的任意一个字符,就能满足匹配规则。
另外,对于连续的数字或字母可以使用符号“-”来表示一个范围,例如[a-z],表示匹配到a到z中的任意一个字母。下面通过查看/etc目录下以rc开头,并且rc后面紧跟一个数字的文件有哪些来演示“[]”符号的使用,查看的命令具体如下所示:
[itheima@localhost ~]$ls /etc | grep "^rc[0-9]" rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d
由输出结果可知,符合规则的文件一共有7个。
注意:元字符“*”或“.”位于“[]”符号之中,便仅表示一个普通的字符,不再具有特殊意义。
“[^]”表示不匹配其中列出的任意字符,其语法格式如下所示。
[^abc]
它的用法与“[]”符号相反,此处不再赘述。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了Python爬虫之线程池的使用,文中有非常详细的的代码示例,对正在学习python爬虫的小伙伴们很有帮助哟。需要的朋友可以参考下
本文主要给大家分享关于使用python实现查找算法的介绍,包括顺序查找、二分查找、插值查找、斐波那契查找、树表查找、分块查找、哈希查找这七种查找算法的实现,具有一定的借鉴价值,感兴趣的朋友可以参考学习。
pathlib 是Python内置库,Python 文档给它的定义是 Object-oriented filesystem paths(面向对象的文件系统路径)。pathlib 提供表示文件系统路径的类,其语义适用于不同的操作系统。
Python内置函数-filter()函数。filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
Python破解压缩包密码的具体步骤是什么,有不少朋友对此感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008