Linux初学学习笔记 -----正则表达式和通配符
2024-08-30 05:41:16
简单来说通配符是用来匹配文件名和目录而正则表达式是用来匹配文本内容的
常用的通配符
*:匹配任意多个字符
下面的是以p为开头的目录里面的文件
?:匹配任意一个字符
[…]:匹配括号内出现的任意一个字符
[!...]:不匹配中括号内出现的任意一个字符
正则表达式
字符匹配
. :匹配任意单个字符
*:匹配其前面一个字符出现任意次
?:匹配其前面的字符1次或0次
+:匹配其前面一个字符出现至少一次(在扩展正则表达式中)
位置匹配
^:锚定行首
$:锚定行尾
\<或\b:锚定词首,其后面的任意字符必须作为单词首部出现
\>或\b:锚定词尾,其前面的任意字符必须作为单词尾部出现
\B:非单词的开头或结尾
^$:空白行
\:通常用于打开或关闭后续字符的特殊含义
分组()
(ab)*:匹配ab这个分组出现任意次
\1:引用第一个左括号以及与之对应的右括号所包括的所有内容,同理还有\2,\3\
特殊子字符类:
[:alnum:]:任何字母和数字
[:alpha:]:任何字母
[:cntrl:]:控制字符,在ASCLL表中对应八进制000到037,和177
[:digit:]:任何数字
[:graph:]:匹配打印字符,相当于‘[:alnum:]’+’[:punct:]’
[:lower:]:小写字母
[:print:]:可打印字符相当于‘[:alnum:]’+’[:punct:]’,和space
[:punct:]标点符号
[:space:]空白字符
[:upper:]大写字母
[:xdigit:]任何16进制的数字
最新文章
- simpson
- 运行Java cmd程序 找不到或无法加载主类怎么解决
- Java多线程与并发库高级应用-传统定时器技术回顾
- jQuery 2.0发布,不再支持IE6/7/8
- iOS学习17之OC内存管理
- 一个DIV三列布局100%高度自适应的好例子(国外)
- 4.VS2010C++建立DLL工程
- 我的EC-final总结
- C#是否该支持“try/catch/else”语法
- C++运算符重载(10)
- GO学习——安装编译(1)
- BZOJ 3585: mex [主席树]
- python之创建文件写入内容
- Python + Anaconda + vscode环境重装(2019.4.20)
- 关键字(8):数据库记录的增删查改insert,delete,select,update
- ubuntu服务器配置
- uniGUI试用笔记(七)
- “全栈2019”Java第一百零三章:匿名内部类详解
- unity3d代码优化标准
- linux中字符串转换函数 simple_strtoul【转】
热门文章
- JS如何避免重复性触发操作
- 深入了解Redis(8)-高可用方案
- django基础回顾
- 快速傅里叶变换学习笔记(FFT)
- 浅析 AC 自动机
- Preparation for MCM/ICM Writing
- svn“Previous operation has not finished; run &#39;cleanup&#39; if it was interrupted“报错的解决方案
- nginx&;http 第三章 ngx http ngx_http_process_request_line读取和处理HTTP头部的行
- 分布式监控系统之Zabbix基础
- TCP协议原理与格式初探