正则表达式与扩展正则表达式

6、正则表达式:基础与扩展全解析 本文深入解析了正则表达式的基础知识与扩展功能,对比了正则表达式与shell模式的区别,探讨了其在文本处理中的实际应用,包括数据验证、文本替换和数据提取等场景。同时提供了性能优化建议和实践示例,帮助读者更好地掌握这一强大工具。 阅读详情

最近用到sed时,用正则表达式总是出错
后来了解到sed是基础的正则表达式,而我用的扩展正则表达式以及正则表达式的扩展,很容易混淆,选择记录一下

BRE: basic regrular expression
ERE: extended regrular expression

BREERE含义
^$^$行首行尾
**大于等于0次
&&引用匹配的内容
无+大于等于1次
无?非贪婪匹配, 大于等于0次
无|或者
[..][..]可选
\{n,m\}{n,m}匹配n到m处
\ ( \ )()bre是后向引用,只有\1到\9,ere是分组

注意

  • 三种括号只有[]有点不同, 以上都是转义的意义,如果要匹配括号, 对应加上\或去掉\
  • 在[] 中 全部不需要转义
  • 如果要可选], 则将]置于最前 ,比如 []ab4],
  • 要可选-, 由于-在[]中表示连续的,比如1-9表示1至9,所以也是置于最前面, 比如[-a3]
  • 若两者都有,-,[, 则 []d3kj-]

posix字符集

形如[:alnum:]
alpha, lower upper, blank(空格与制表符) space(空白) graph
cntrl控制符 print 可显示字符 punct 标点 xdigit(十六进制) digit

正则表达式的扩展

  • \w : 字母数字 对应大写是非 \W 非字母数字
  • \b: 空白 \B
  • \<,> : 单词的首尾

最后放上常用的程序用到的正则表达式类型

这里写图片描述

注意:

  • grep -E 等同于 egrep用的(ERE)
  • grep -F 等同于 fgrep速度快,不能用正则
23、扩展正则表达式与目录结构及设备详解 本文详细介绍了扩展正则表达式(ERE)的特殊字符及其使用规则,包括匹配多个字符、交替与优先级、锚定机制等内容。同时,文章还解析了系统目录结构及设备文件的功能,如根目录、/dev目录下的特殊文件,并结合正则表达式展示了在文件查找、输入验证和输出重定向中的实际应用。最后,文章总结了使用正则表达式和目录操作的注意事项及最佳实践。 阅读详情

相关推荐

29、布尔矩阵根计算复杂度与扩展正则表达式匹配算法

本文探讨了布尔矩阵根计算复杂度与扩展正则表达式匹配算法两个计算机科学领域的核心问题。在布尔矩阵根方面,分析了其与图同构的关系及在不同条件下的复杂性边界,提出有界树宽等概念可能为问题简化提供新路径;在扩展正则表达式匹配方面,介绍了一种结合模块划分、增强NFA和位并行技术的新算法,显著提升了时间与空间效率,并给出了详细的算法流程与复杂度对比。研究表明,这两类问题不仅具有理论深度,也在实际应用中展现出广泛前景。

gamma的博客 36

扩展正则表达式

在Linux中,正则表达式可以分为”基本正则表达式”和”扩展正则表达式”。 我们已经认识了”基本正则表达式”,现在,我们来认识一下”扩展正则表达式”。 有了之前的基础,学习”扩展正则表达式”简直不要太轻松。 之前说过,有些符号是通用的,不管是在”基本正则表达式”中,还是在”扩展正则表达式”中,这些通用的符号所表达的意思都是相同的。 那么,我们先来看看哪些符号是通用的,看完之后你会信心大增,如下字符都是通用的: . 表示任意单个字符。 * 表示前面的字符连续出现任意次,包括0次。 .* 表示任意长度的任

zhangsaho的博客 2937

激光定位算法竞技场:hdl_localization与Cartographer/AMCL的横向技术解剖

本文深入对比了hdl_localization、Cartographer和AMCL三种激光定位算法的技术原理与性能表现。通过UKF-NDT融合、图优化和粒子滤波等核心技术,分析了各算法在结构化环境、动态环境和大尺度场景下的适应性。实验数据表明,Cartographer在全局一致性上表现最优,而AMCL在动态环境中更具鲁棒性。文章还提供了算法选型指南和参数调优技巧,为工程实践提供参考。

weixin_29062865的博客 365

正则表达式(9):扩展正则表达式

上图中的扩展正则使用了分组符号”( )”,”(com|net)”表示将括号内的内容看做一个整体,而括号内的内容为”com|net”,它表示”com或者net”,所以,”(com|net)$”就表示以com或者net结尾的行。上图中,grep命令使用了”-E”选项,表示grep命令会把”正则表达式”中的符号当成”扩展正则表达式”去理解,而不再使用默认的”基本正则表达式”。5、顶级域名之前必须包含一个”点”,换句话说就是,邮箱必须以”.com”、”.net”、”.org”、”.edu”结尾。

qq_40531442的博客 2168

深入解析高通Adreno DPU的DRM/KMS驱动架构与硬件协同设计

本文深入解析了高通Adreno DPU的DRM/KMS驱动架构与硬件协同设计,详细介绍了Adreno DPU的核心模块组成、显示接口设计以及DRM驱动架构。通过实际案例和调试技巧,帮助开发者理解硬件与软件的协同工作原理,优化显示性能并解决常见问题。

weixin_29266679的博客 436

从软体机器人到鞋垫分析:Abaqus超弹性材料(Ogden模型)仿真配置全流程

本文详细介绍了Abaqus中Ogden模型在超弹性材料仿真中的应用全流程,涵盖从实验数据导入、参数拟合到模型构建与求解优化的关键步骤。特别针对鞋垫分析等生物力学场景,提供了单元选择、接触设置和并行计算等实用技巧,帮助工程师实现高精度仿真分析。

weixin_42525385的博客 399

基本正则表达式与扩展正则表达式的使用以及可能应用到的场景

简单地说,正则表达式是一种符号表示法,用于识别文本模式。在某种程度上,它们类似于匹配文件和路径名时使用的shell通配符,但其用途更广泛。许多命令行工具和大多数编程语言都支持正则表达式,以此来解决文本操作方面的问题。然而,在不同的工具,以及不同的编程语言之间,正则表达式都会略有不同,这让事情进一步麻烦起来。方便起见,我们将正则表达式的讨论限定在POSIX标准中(它涵盖了大多数命令行工具),与许多编程语言(最著名的Perl)不同,这些编程语言使用的符号集要更多一些。

m0_64505752的博客 844

QGIS基于快鸟(QuickBird)影像统计小麦种植面积

​01数据情况 本次选用某地4月份快鸟(QuickBird)影像为例,使用QGIS演示提取小麦播种情况,并按照200米*200米分区计算种植面积的过程。 注:本文对应的操作视频作为今天第二篇推送同时发布,习惯看视频的朋友可以点击观看。 附数据压缩包: 链接:https://pan.baidu.com/s/1JVUS8uAOR61RxC1n9Or9_w 提取码:qgis 含快鸟影像QB_subset.tif和200*200米分区矢量图层200Mgrid.shp。 ...

QGISClass的博客 1979

正则表达式及拓展方法

正则表达式相关内容

justjailbreak的博客 359

在 Esp32 摄像头上实现边缘脉冲 FOMO 物体检测

本文将详细介绍如何在 Esp32 摄像头上实现边缘脉冲 FOMO 物体检测,并提供实现源码

DT程序员的博客 704

[UVM]UVM TLM2.0简介及应用实例分析

本文介绍了TLM2.0在UVM中的实现与应用。TLM2.0作为SystemC模型间的核心传输机制,相比TLM1.0提供了更丰富的特性,包括双向阻塞/非阻塞接口、时间标记和统一数据包。文章详细解析了TLM2.0在UVM中的接口实现方式,包括socket类型定义、数据传输机制以及时间标记处理。通过一个具体实例,展示了如何在UVM组件中使用TLM2.0的initiator和target socket进行数据传输,并说明了标准数据包格式和精确时间标记的优势。最后指出TLM2.0在UVM中的实现主要是为了与Syste

元直的博客 5395

基本正则表达式与扩展正则表达式

正则表达式一 基本正则表达式1.字符匹配1.匹配次数三级目录 写在前面:一直以来 对于正则表达式的使用都没有进行一个系统性的梳理学习,导致在工作中进行脚本编写时,总是会出现一些不符合自己认知的错误,最近抽空将其进行了系统性的学习与梳理 所谓正则表达式 是对文本中的字符串进行处理的一种工具,由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符),不表示字符字面意思,而表示控制或通配的功能 程...

Buster_ZR的博客 6658

使用MATLAB和Simulink来设计并仿真一个智能家居多传感器数据融合系统

智能家居多传感器数据融合系统旨在通过集成来自多种不同类型的传感器的数据,以提供更精确和可靠的环境信息或用户状态监测。例如,将温度、湿度、光照强度、运动检测等多种传感器的数据结合起来,可以更好地了解家庭内部的状态,并做出相应的调整或响应。在这个教程中,我们将使用MATLAB和Simulink来设计并仿真一个智能家居多传感器数据融合系统。

amy_mhd的博客 187

linux基础篇-12,grep正则表达式与扩展正则表达式

基本正则表达式:grep 使用正则表达式定义的模式来过滤文本 grep    -i :不区分大小写   --color   -v:显示没被匹配的任意行   -o:只显示被匹配的字符串   -E 扩展的正是表达式 =egerp   -A#:#为数字   -B#:   -C#: [root@Jameszhan testcp]# grep -o 'root' /etc

爱无止尽的博客 1562

YOLOv8与UNetV2融合:一种面向目标检测与图像分割的混合方法【附核心代码】

我们提出了一种基于YOLOv8和UNetV2相结合的混合架构。该架构利用YOLOv8作为主干进行目标检测,同时在YOLOv8的特征提取过程中,引入UNetV2来进行图像分割任务的增强。在该架构中,YOLOv8负责大范围目标检测和位置预测,而UNetV2则在检测网络的特征图基础上,通过其高效的上下文信息提取和细节恢复能力,进一步优化分割任务。在本文中,我们提出了一种改进YOLOv8的方法,通过引入图像分割网络UNetV2来提高图像分割检测性能。

一键难忘的博客 3524

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Shell编程——正则表达式基础与扩展

正则表达式基础   Linux Shell以一串字符作为表达式向系统传达意思。元字符(Metacharacters)是用来阐释字符表达式意义的字符,简言之,元字符就是描述字符的字符,它用于对字符表达式的内容、转换及各种操作信息进行描述。正则表达式是由一串字符和元字符构成的字符串,简称RE(Regular Expression)。正则表达式的主要功能是文本查询和字符串操作,它可以匹配文本的一个字

灵魂自由的忙人 438

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

027egrep与扩展正则表达式

扩展正则表达式功能与基本正则表达式相同,但是语法更简洁易懂。 我们可以使用grep -E来支持扩展正则表达式,也可以使用专用命令egrep。   egrep [OPTIONS] PATTERN [FILE...] 选项:          -i,-o, -v, -q, -A, -B, -C(这些选项含义与grep相同,忘记的可以man或者回去看上一节grep的讲解)       ...

TheMonkeyKing 339

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

[ SHELL编程 ] 通配符与基础正则表达式、扩展正则表达式

在Linux命令行操作或者SEHLL编程中总是容易混淆一些特殊字符的使用,比如元字符‘*’号,作为通配符匹配文件名时表示0个到无穷多个任意字符。而作为正则表达式匹配字符串时,表示重复0个到无穷多个的前一个字符。对于通配符和正则表达式之间容易理解的方法就是,在文本过滤命令中这些元字符是用做正则表达式,比如像awk,sed,grep等,主要是针对文件内容的。然而通配符多用在文件名上,比如查找find,...

guanyi的博客 406

扩展正则表达式egrep与awk应用

扩展正则表达式egrep与awk

Mr_XHC的博客 804

Linux通配符与基础正则表达式、扩展正则表达式

在Linux命令行操作或者SHELL编程中总是容易混淆一些特殊字符的使用,比如元字符‘*’号,作为通配符匹配文件名时表示0个到无穷多个任意字符。而作为正则表达式匹配字符串时,表示重复0个到无穷多个的前一个字符。对于通配符和正则表达式之间容易理解的方法就是,在文本过滤命令中这些元字符是用做正则表达式,比如像awk,sed,grep等,主要是针对文件内容的。然而通配符多用在文件名上,比如查找f...

weixin_30895603的博客 292

正则表达式与扩展表达式(awk、sed、grep三剑客)

正则表达式 正则表达式的定义正则表达式又称正规表达式、常规表达式。在代码中常简写为 regex、regexp 或 RE。正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。 简单来说, 是一种匹配字符串的方法,通过一些特殊符号,实现快速查找、删除、替换某个特定字符串。 正则表达式是由普通字符与元字符组成的文字模式。模式用于描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为...

karvin666的博客 1461
上一篇: vim配色方案murphy,以及多行注释插入技巧
下一篇: 实验楼mysql挑战三---mysql的触发器trigger,过程rpocedure,授权grant的使用
mbinary
博客等级 码龄9年 39粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值