`
kanwoerzi
  • 浏览: 1639702 次
文章分类
社区版块
存档分类
最新评论

Linux笔记——正则表达式入门及应用

 
阅读更多

列表:

Linux笔记——vim常用操作及扩展补充[手册]

Linux笔记——linux常用命令集合

Linux笔记——命令:awk

Linux笔记——命令:sed

Linux笔记——命令:grep

Linux笔记——命令:find

Linux笔记——命令:Sort,uniq,join,cut,paste,split

Linux笔记——shell基础:变量&本地变量&位置变量&特定变量参数

Linux笔记——条件测试test

Linux笔记——控制流

Linux笔记——shell补充:参数传递&函数等

Linux笔记——正则表达式入门及应用

Linux笔记——linux进程

Linux笔记——SVN命令总结

rpm&yum包管理命令总结

鉴于博客,表格&排版&颜色标记等等无法显示,大家可以下载这个笔记的资源

12个文档,不需要积分,以目录+表格+颜色标记形式

下载资源地址http://download.csdn.net/detail/wklken/3815477

The end! Thx! wklken的笔记

-----------------------------------------------



当从一个文件或命令输出中抽取或过滤文本时,可以使用正则表达式。

以下是在基本命令中使用正则表达式的一些定义及用法

基本元字符集及其含义

^

匹配行首

$

匹配行尾

.

匹配任意单个字符

*

字符*匹配0或多个此字符

/

屏蔽一个元字符的特殊含义

[]

匹配中括号中出现的字符,可以是单字符或字符序列,可以使用表范围

Pattern/{n/}

匹配其那面patern出现的次数,n为次数

Pattern/{n,/}

至少出现n

Pattern/{n,m/}

n<=次数 <=m

使用例子:

1.匹配任一单个字符

句点允许匹配ASCII集中任一字符,或为字母或为数字

b.g->big bag beg

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

只允许在一行的开始匹配字符或单词

$ls –l | grep ^d匹配文件夹

^001开头为001

3.在行尾以$匹配字符串或序列

ld$ld结尾

^$匹配所有空行

^.$只包含一个字符的

4.使用*匹配字符串中单字符或其重复序列

Compu*t匹配u重复0或多次

5.使用/屏蔽一些特殊字符

特殊$. * [ ]^| ( ) / + ?

/.匹配句点

/*/.pass匹配*.pass

6.使用[]匹配一个范围或集合

匹配特定字符串,字符串集可用逗号分隔

数字:[0123456789][0-9]

小写字母: [a-z]

所有字母:[A-Za-z]

字母和数字: [A-Za-z0-9]

所有单词:[A-Za-z]*

[Cc]omputer匹配Computercomputer

注意:在[]中,^代表否定

非字母:[^A-Za-z]

非数字:[^0-9]

7.使用/{/}匹配模式结果出现的次数

A/{2/}B匹配AAB

A/{4,/}B匹配A出现至少4B

A/{2,4/}B匹配A出现在24次之间

【后序的待补充,目前看的书讲的比较广,深入的需要再看相关的】

书写正则表达式:

A.明确要求,即预期结果,写出例子

B.根据要求写正则

C.测试,逐步修改

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics