Linux-正则表达式 学习笔记(一)
来源:互联网 发布:淘宝女包店 我爱你店 编辑:程序博客网 时间:2024/05/21 08:00
今天博主学到linux的正则表达式,今天分享下学习经历。
什么是正则表达式?
在linux中有很多操作都需要配合正则表达式来处理。
简单的说,正则表达式就是处理字符串的方法,它使以香味单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找、删除、替换某种特定字符串的处理程序。
举个栗子:
假设你发现系统在开机的时候,经常会出现一个关于mail程序的错误,而开机过程的相关程序都是在/etc/init.d/下面,也就是说,子啊该目录下面的某个文件具有mail这个关键字,你想要将改文件选出来进行查询修改的错做。你如果一个一个去打开,要是有100个,是不是会很烦,想死的心估计都有了。那么这个时候就可以用到正则表达式了,我们只需要输入:gerp’mail’/etc/init/d/*,那这个grep就是支持正则表达式的工具程序之一。
正则表达式的用途
由于正则表达强大的字符串处理能力,目前一堆软件都支持正则表达式。最常见的就是“邮件服务器”。目前造成网络阻塞的一打原因就是垃圾邮件,而如果我们可以在服务器端就将这些问题邮件删除的话,客户端就会减少很多不必要的带宽损耗了。这个时候就可以使用我们的正则表达式。
这个怎么学
红红火火恍恍惚惚,这个就是要背啊,就像你小学背九九乘法表一样的,也要一样的滚瓜烂熟。
语系对正则表达式的影响
举个栗子:
1、 LANG=C时:0 1 2 3 4 5…A B C D…Z a b c d…z
2、 LANG=zh_CN是:0 1 2 3 4 5…a A b B c C d D…z Z
上面的编码顺序我们看着就很不一样,所以,使用正则表达式时,一定要特别留意当时环境的语系是什么,否则可能会发现与别人不相同的选取结果。
特殊符号
代表意义
[:alnum:]
代表英文大小写字符及数字,及0-9,A-Z,a-z
[:alpha:]
代表任何应为大小写字符,及A-Z,a-z
[:blank:]
代表空格与[Tab]按键
[:cntrl:]
代表键盘上的控制按键,即包括CR,LF,Tab,Del等
[:digit:]
代表数字而已,即0-9
[:gerph:]
除了空格与Tab的其他按键
[:lower:]
代表小写字符,即a-z
[:print:]
代表任何可以被打印出来的字符
[:punct:]
代表标点乳,即?”!;.,#$
[:upper:]
代表大写字符,即A-Z
[:space:]
任何会产生空白的字符,包括空格键[Tab]CR等
[:xdigit:]
代表是十六进制的数字类型,因此包括0-9,A-F,a-f的数字与字符
[:alnum:] [:alpha:] [:digit:] [:lower:] [:upper:]这几个比较重要,我已经加粗了,因为它们的用途更加方便。
- Linux-正则表达式 学习笔记(一)
- 正则表达式 学习笔记(一)
- 正则表达式学习笔记(一)
- 正则表达式学习笔记(一)
- java正则表达式学习笔记(一)
- PHP正则表达式学习笔记(一)
- 正则表达式学习笔记(一)
- 正则表达式 学习笔记(一)
- 正则表达式学习笔记(一)
- 正则表达式学习笔记(一)
- 正则表达式学习笔记(一)
- delphi正则表达式学习笔记(一)
- 【学习笔记】正则表达式(一)
- 正则表达式学习笔记(一)
- 正则表达式学习笔记 一
- 正则表达式学习笔记一
- 正则表达式学习笔记一
- Linux学习笔记(九)正则表达式
- mysql中查询日志与慢查询日志
- hihoCoder 编程练习赛19 A, B
- HDU
- quotemeta函数为预定义的字符前加反斜杠
- 递归与动态规划
- Linux-正则表达式 学习笔记(一)
- hashcode()和equal()
- 欧拉函数 POJ2480
- java基础之方法的重载和重写
- Android 自定义View (一)
- PHP 7 的五大新特性
- pdf.js如何默认显示指定页码
- 利用html5实现类似微信的手机摇一摇功能-计算摇动次数
- qt5.9+qtcreator4.3.1 helloworld+添加图标流程