资讯详情

shell 正则表达式与文件名匹配

1) . : 匹配任意单ASCII 字符,可以是字母,也可以是数字。

2) 举例: ..XC..匹配deXC1t、23XCdf

等,.w..w..w.匹配rwxrw-rw-

行首以^匹配字符串或字符序列

1) ^ : 允许在一行开始匹配字符或单词。

2) 举例: ^.01 匹配0011cx4、c01sdf 等,^d

匹配drwxr-xr-x、drw-r--r--等

行尾以$匹配字符串或字符

1) $ : 在行尾匹配字符串或字符,$匹配单词后放置符号。

2) 举例: trouble$ 匹配以单词trouble

结尾的一切

^$匹配所有空行

使用*匹配字符串中的单字符或其重复序列(与文件名置换)"*"不一样)

1) * : 后跟单字符*,匹配0 一个或多个单字符。

2) 举例: compu*t 将匹配字符u

一次或多次,即匹配computer computing compuuute

1033* 可以匹配 101333 10133 1013444

3) 用于正则表达式"*",有时会产生意想不到的结果。

使用\屏蔽特殊字符的含义

1) \ : 用来屏蔽元字符的特殊含义。因为有时在shell

中元字符有特殊的含义。\它会失去应有的意义。

2) 举例: 匹配正则表达式*.pas 结尾的所有文件: \*\.pas$

使用[]匹配属于一个范围或集合单个字符

1) [ ] : 匹配"[

]"里面的字符。可以是单字符,也可以是字符序列。可以使用"-"表示括号"[ ]"内字符序列范围,

用[1-5]代替[12345]。可以使用逗号","分隔括号"[]"内的字符。

2) 当"^"直接依靠符号"[",指定或不匹配括号"[]"里内容

3) 举例: [0-9]匹配任何数字;[a-z]匹配任何小写字母[0-9A-Za-z]匹配任何字母或数字;

[C,c]omputer 匹配Computer

和computer;[^a-zA-Z]匹配任何非字母字符

使用"\{\}"匹配模式结果出现的次数

1) pattern\{n\}

: 匹配模式pattern 出现n 次的情形。

2) pattern\{n,\}: 匹配模式pattern 最少出现n 次的情形。

3) pattern\{,m\}: 匹配模式pattern 最多出现m 次的情形。

4) pattern\{n,m\} : 匹配模式pattern 出现次数在n

与m 两者之间的情况。

5) 举例: A\{2\}B 匹配的值为AAB

A\{2,\}B 匹配值可以是AAB 或AAAAAB,但不能匹配AB

A\{2,4\}B匹配值可以是AAB、AAAB、AAAAB,但不能匹配AB 或AAAAAB 等

[0-9]\{4\}CX[0-9]\{4\}4.匹配数字出现

次后跟CX,最后,数字出现4 次的情形

6) 其实真正的格式是 {n} {n,} {,m} {n,m},只不过对"{"和"}"应用了Esacpe 字符"\"。

常用的正则表达式例子

[Ss]igna[lL]

匹配单词signal、signaL、Signal、SignaL

[Ss]igna[lL]\. 同上,但加一句点

^USER$

只包含USER

的行

\.

带句点的行

^d..x..x..x

目录可以执行用户、用户组等用户和组成员

^[^l]

排除符号链接文件后的文件目录列表(即不是"l"开始的行)

[yYnN]

大写或小写y

或n

^.*$

匹配行中的任何字符串

^...$

包括6 个字符的行

[a-zA-Z]

任何单个字母

[a-z]*

至少一个小写字母

[^0-9\$]

非数字或美元符号

[123]

1 到3

中一个数字

\^q

以^q

开始行

^.$

行只有一个字符

^\.[0-9][0-9]从一个句点和两个数字开始

[0-9]\{2\}-[0-9]\{2\}-[0-9]\{4\}

日期格式dd-mm-yyyy

[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\}类IP

地址格式

nnn.nnn.nnn.nnn

.*

匹配任何多个字符

linux shell 正则表达式(BREs,EREs,PREs)差异比较

linux shell 正则表达式(BREs,EREs,PREs)差异比较 表达式:在计算机科学中,它是指符合句法规则的一系列字符的描述或匹配 单字符串.在许多文本编辑器或其他工具中 ...

linux shell 正则表达式(BREs,EREs,PREs)的比较

原文 : linux shell 正则表达式(BREs,EREs,PREs)差异比较 在使用 linux shell实用程序,如awk,grep,sed等等,正则表达式是必不可少的,它们有什么区别? ...

三剑客和文本处理shell正则表达式

三剑客的文本处理 说到文本的处理,除了vim除了这个强大的编辑器,还有使用命令来处理你想要处理的文本,而不需要手动打开文本来编辑.这样做的好处是可以shell以命令的形式编辑和处理文本的工作 ...

C#正则表达式Regex常用匹配

使用Regex类别需要引用命名空间:using System.Text.RegularExpressions; 利用Regex类实现验证 示例1:注释代码起着相同的作用,但一种是静态方法,另一种是静态方法 ...

JQUERY选择和操作DOM元素(使用正则表达式匹配字符串的一部分)

JQUERY选择和操作DOM元素(使用正则表达式匹配字符串的一部分) 1.匹配属性的开头 $("[attributeName^='value']"); 2.匹配属性的结尾 ...

JAVA旅行(34)-自定义服务端,URLConnection,正则表达式特征,匹配,切割,替换,获取,网页爬虫

JAVA旅行(34)-定制服务端,URLConnection,正则表达式特征,匹配,切割,替换,获取,网页爬虫 网络编程,TCP 一.定制服务端 我们直接写一个服务端,让本机连接 ...

Linux文件名匹配和输出重定向-2019-4-24

1.匹配文件名 例:rm *.bak; 删除结尾是.bak的文件 rm *4*.bak; 删除名称中有“4”的.bak文件 ls *???; 搜索结尾.文件后面有四个字母 2.管道 先进 ...

C#,如何使用正则表达式来修改匹配位置的结果

如何用正则表达式修改程序代码匹配的值: 代码一: using System; using System.Text.RegularExpressions; public class Example ...

Delphi 正则表达式语法(7): 匹配转义字符

Delphi 正则表达式语法(7): 匹配转义字符 // ? 数字的意义是匹配 0-1 次, 若需要匹配 ? 怎么办 var reg: TPerlRegEx; begin reg := TPe ...

随机推荐

SqlServer性能优化 性能调节(十)

如何调控资源: 1.建立资源池. 2.创建工作负荷组 create resource pool ImporPool with ( min_cpu_percent=30,max_cpu_percen ...

SqlServer性能优化 提高并发性能(8)

并发访问: 当多个线程访问相同的资源时,会出现并发性问题 并发控制与处理: 乐观并发控制:一种方法是"后来更新者获胜" 这意味着用户提交的第一个值将在没有注意到的情况下丢失. 为 ...

angular(3)服务 --注入-自定义模块-单页应用

ng内部,一旦发生值改变操作,如$scope.m=x,自动轮询$digest触发指定的队列$watch,调用其回调函数,然后修改dom树. 干货:https://github.com/xufei ...

有趣的js实例,你吗??[原创]

首先,看看下面一个js例子,你觉得会输出什么呢? function fn(a){ a(); function a(){ console.log(2); } var a = function(){ co ...

ZOJ 3903 Ant(公式推导)

这个公式推导过程是看的这位大牛的http://blog.csdn.net/bigbigship/article/details/49123643 扩展欧几里德求模的逆元方法: #include &lt ...

最近客户的apache+php环境运行很慢解决

描述:[Wed Jul 24 15:49:11 2013] [warn] (OS 64)指定的网络名不再可用.  : winnt_accept: Asynchronous AcceptEx faile ...

三.RabbitMQ之异步消息队列(Work Queue)

上一篇文章简要介绍了RabbitMQ的基本知识点,并且写了一个简单的发送和接收消息的demo.这一篇文章继续介绍关于Work Queue(工作队列)方面的知识点,用于实现多个工作进程的分发式任务. 一 ...

css实现响应式布局的相关内容

所以我就在做自适应的时候查了一些资料 首先我发现一个问题:有响应式布局和自适应布局两种布局效果 简单来说,响应式布局就是不同的设备无论大小 布局都自动调整大小 页面布局都一样 可以保证无论什么设备 用 ...

Windows10安装ubuntu & caffe GPU版

1.Ubuntu https://www.cnblogs.com/EasonJim/p/7112413.html https://blog.csdn.net/jesse_mx/article/deta ...

epoll源码分析

epoll源码分析 最近在使用libev过程中遇到一个场景:一个fd从一个ev_loop迁移到另一个ev_loop,会出现这个fd同时存在两个epoll的瞬间.不禁要问了,一个fd同时被两个epoll ...

标签: 0871匹配哪种连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台