【Regular Expression】RE分类及案例
背景知识
正则表达式分为三类:基础正则表达式、扩展正则表达式、Perl正则表达式(Perl内建)
通俗来说,这三个一个比一个强大,支持的规则匹配字符更多
1.匹配IP
ip addr | grep -P '\b(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(2[0-5]{2}))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(2[0-5]{2}))\b'
ip addr 获得本机IP
grep -P 使用Perl正则表达式 不带 -P 参数时,表示使用 基础正则表达式
\b 位置匹配,匹配字符串边界
\d 是[0-9]的另一个写法
( ) 括号 是 使用了 子表达式
{ } 代表 匹配到的字符串的重复次数
| 或者
2.匹配MAC地址 -P 表示使用Perl正则表达式
ip addr | grep -P '([0-9A-Fa-f]{2}:){5}([0-9A-Fa-f]{2})'
常握 Linux 下几种常用文本工具的特点,对于我们更好的使用正则表达式是很有帮助的 grep , egrep 正则表达式特点: 1)grep 支持:BREs、EREs、PREs 正则表达式 grep 指令后不跟任何参数,则表示要使用 ”BREs“ grep 指令后跟 ”-E" 参数,则表示要使用 “EREs“ grep 指令后跟 “-P" 参数,则表示要使用 “PREs" 2)egrep 支持:EREs、PREs 正则表达式 egrep 指令后不跟任何参数,则表示要使用 “EREs” egrep 指令后跟 “-P" 参数,则表示要使用 “PREs" 3)grep 与 egrep 正则匹配文件,处理文件方法 a. grep 与 egrep 的处理对象:文本文件 b. grep 与 egrep 的处理过程:查找文本文件中是否含要查找的 “关键字”(关键字可以是正则表达式) ,如果含有要查找的 ”关健字“,那么默认返回该文本文件中包含该”关健字“的该行的内容,并在标准输出中显示出来,除非使用了“>" 重定向符号, c. grep 与 egrep 在处理文本文件时,是按行处理的 sed 正则表达式特点 1)sed 文本工具支持:BREs、EREs sed 指令默认是使用"BREs" sed 命令参数 “-r ” ,则表示要使用“EREs" 2)sed 功能与作用 a. sed 处理的对象:文本文件 b. sed 处理操作:对文本文件的内容进行 --- 查找、替换、删除、增加等操作 c. sed 在处理文本文件的时候,也是按行处理的 Awk(gawk)正则表达式特点 1)Awk 文本工具支持:EREs awk 指令默认是使用 “EREs" 2)Awk 文本工具处理文本的特点 a. awk 处理的对象:文本文件 b. awk 处理操作:主要是对列进行操作
【Regular Expression】RE分类及案例的更多相关文章
- 【 Regular Expression Matching 】cpp
题目: Implement regular expression matching with support for '.' and '*'. '.' Matches any single chara ...
- [LeetCode] Regular Expression Matching [6]
称号: Implement regular expression matching with support for '.' and '*'. '.' Matches any single chara ...
- Java基础-正则表达式(Regular Expression)语法规则简介
Java基础-正则表达式(Regular Expression)语法规则简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.正则表达式的概念 正则表达式(Regular Exp ...
- [LeetCode] Regular Expression Matching 正则表达式匹配
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
- myeclipse中导入js报如下错误Syntax error on token "Invalid Regular Expression Options", no accurate correc
今天在使用bootstrap的时候引入的js文件出现错误Syntax error on token "Invalid Regular Expression Options", no ...
- [LeetCode] 10. Regular Expression Matching
Implement regular expression matching with support for '.' and '*'. DP: public class Solution { publ ...
- No.010:Regular Expression Matching
问题: Implement regular expression matching with support for '.' and '*'.'.' Matches any single charac ...
- Regular Expression Matching
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
- 【leetcode】Regular Expression Matching
Regular Expression Matching Implement regular expression matching with support for '.' and '*'. '.' ...
- 【leetcode】Regular Expression Matching (hard) ★
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
随机推荐
- Python爬虫从入门到放弃(十二)之 Scrapy框架的架构和原理
这一篇文章主要是为了对scrapy框架的工作流程以及各个组件功能的介绍 Scrapy目前已经可以很好的在python3上运行Scrapy使用了Twisted作为框架,Twisted有些特殊的地方是它是 ...
- zepto.js 的tap事件中点击一次触发两次事件
html代码: <div class="xh-lxx-cart-count1"> <span class="minus">-</s ...
- 初学angular
1.angular 表达式 2.ng-app ng-init ng-model ng-repeat ng-model是用于表单元素的,支持双向绑定.对普通元素无效: ng-bind用于普通 ...
- 如何开始使用bootstrap
登陆Bootstrap官网:http://getbootstrap.com/ Bootstrap中的JS插件依赖于jQuery,因此jQuery要在Bootstrap之前引用 bootstrap框架初 ...
- 史上最易懂——ReactNative分组列表SectionList使用详情及示例详解
React Native系列 <逻辑性最强的React Native环境搭建与调试> <ReactNative开发工具有这一篇足矣> <解决React Native un ...
- JavaScript系统学习小结——Object类型、Array类型
今天学习JavaSript中引用变量中的Object类型和Array类型: 1. Js中大多数引用类型值都是Object类型的实例,Object类型在应用程序中存储和传输数据时,是非常理想的选择: 创 ...
- 【JAVASCRIPT】event对象
一.preventDefault 与 stopPropagation event.preventDefault() 和 event.stopPropagation() 不是JQuery的方法,是JS ...
- mk框架,一个基于react、nodejs全栈框架
在这个前端技术爆炸的时代,不自己写套开源框架出门都不好意思跟别人打招呼,作为一个前端领域的小学生,去年年初接触了react,之后一发不可收拾爱上了它,近期重构了自己去年开源的一个项目,废话到此结束句号 ...
- C#中调用HttpWebRequest类中Get/Post请求无故失效的诡异问题
先附代码 /// <summary> /// 客户端Http(GET) /// </summary> /// <param name="strUrl" ...
- ue4 C++ 导入图片
void SDrawHouseTypeTools::OnButtonClickLoadImage() { // 当前如果是在硬装模块,则可进行导入户型操作 FHardEdM ...