Linux之正则表达式】的更多相关文章

linux shell 正则表达式(BREs,EREs,PREs)差异比较 则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符 串的单个字符串.在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容.许多程序设计语言都支持利用正则表达式 进行字符串操作.例如,在Perl中就内建了一个功能强大的正则表达式引擎.正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普 及开的.正则表达式通常缩写成“regex”,单数有r…
1.1 linux中正则表达式 1.^linux        以linux开头的行 2.$php         以php结尾的行 3..                匹配任意单字符 4..+              匹配任意多个字符 5. .*              匹配0个或多个字符(可有可无) 6. [0-9a-z]     匹配中括号内任意一个字符 7. (linux)+        出现多次Linux单词 8. (web){2}        web出现两次以上 9.\ …
原文 :   linux shell 正则表达式(BREs,EREs,PREs)差异比较 在使用 linux shell的实用程序,如awk,grep,sed等,正则表达式必不可少,他们的区别是什么  (vim中见 下一篇vim正则表达式) 正则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,在Perl中…
ls就是默认排序的. 所以: ls只支持通配符,不支持正则,所以单纯用ls是不能实现的. 一些正则过滤操作需要结合支持正则的命令如grep.sed或awk. 例如:ls | grep "[0-9]$" 得到:aaa1 aaa2 aaa3   分享 本回答由电脑网络分类达人 汪正茂认证 其他类似问题 2010-04-29linux下ls命令17 2012-09-23linux中“ls” .“ls -a”.“ls -al”的区...18 2010-03-26linux ls -l40 20…
我想各位也和我一样,再linux下使用grep,egrep, awk , sed, vi的搜索时,会经常搞不太清楚,哪此特殊字符得使用转义字符'\' ..   哪些不需要, grep与egrep的差异等等.下面就是我在网上找到的一篇介绍这方面的文章.如下: 转载自:http://www.cnblogs.com/chengmo/archive/2010/10/10/1847287.html 正则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.在很多文本编…
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑.适当使用正则表达式可以提高工作效率.正则表达式帮助文档链接: https://pan.baidu.com/s/1Sws9HBQSR4XSJQZ1dm9G0w 密码: 178u 我们使用的regular_express.txt如下所示 "Open Source" is a good mechanism to develop…
正则表达式是一种字符模式,用于在查找过程中匹配制定的字符. 元字符通常在Linux中分为两类:Shell元字符,由Linux Shell进行解析:正则表达式元字符,由vi/grep/sed/awk等文本处理工具进行解析:正则表达式一般以文本行进行处理,在进行下面实例之前,先为grep命令设置--color参数: class="">$ alias grep='grep --color=auto' 这样每次过滤出来的字符串都会带色彩了. 在开始之前还需要做一件事情,就是创建一个测试用…
add by zhj: Python的正则表达式跟Perl很像,Python的re模块文档中也说"This module provides regular expression matching operations similar to those found in Perl." grep -P 就是使用Perl正则表达式,由于工作中使用的是Python,我自己在使用grep时,加-P参数,这样也方便 原文:http://www.cnblogs.com/chengmo/archive…
目录:    Ⅰ:正则表达式    Ⅱ:作业 Ⅰ:正则表达式 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 在linux中,通配符是由shell解释的,而正则表达式则是由命令解释的,三种文本处理工具/命令:grep.sed.awk 正则介绍:^ 以什么开头(同一行)         $ 以什么结尾(同一行)          . 除了换行符以外的任意单个字符          * 紧挨的左边的第一个字符出现零个到…
转载: 在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或 替换那些符合某个模式的文本内容.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,在Perl中就内建了一个功能强大的正则表达式引擎.正则 表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的.正则表达式通常缩写成“regex”,单数有regexp.regex, 复数有regexps.regexes.regexen.…
正则表达式 POSIX标准的符号 [:alnum:] -> 英文大小写字母和数字 0-9,A-Z,a-z [:alpha:] -> 英文大小写字母 A-Z,a-z [:blank:] -> 空格键的tab键 [:cntrl:] -> 键盘上的控制按键CR LF Tab Del等 [:digit:] -> 数字 0-9 [:graph:] -> 除了空格符和tab外的其他所有按键 [:lower:] -> 小写字母a-z [:print:] -> 任何可以打印…
1. 扩展正则表达式 1.1 +(加号) + 表示前一个字符出现1次或1次以上 1.1.1 理解+ 要求:取出文件内容连续出现的小写字母 [root@oldboyedu50-lnb /oldboy]# egrep '0+' oldboy.txt grep -E===egrep my qq is 49000448 not 4900000448. [root@oldboyedu50-lnb /oldboy]# grep -E '0+' oldboy.txt my qq is 49000448 not…
  在windows中,是没有办法批量处理文件的,但是在linux系统中,可以通过命令直接处理一系列文件,这些文件的处理就需要用到正则表达式.这同样可以应用与目录. 1.处理多个文件 正则表达式中批量处理文件常用的有"{}".例如如果需要建立文件"file1"-"file10",如果在windows中,只能一个一个建立,但是在linux中,可以直接通过正则表达式来实现,建立这十个文件,可以输入命令"touch file{1..10}&q…
目录 正则表达式 基本正则表达式 扩展正则表达式 grep tr diff du wc find 正则表达式 正则表达式,又称正规表示法.常规表示法( Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.正则表达式可以用来检查一个串是否含有某种子串.将匹配的子串替换或者从某个串中取出符合某个条件的子串等.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的…
转自:http://www.cnblogs.com/xiaouisme/archive/2012/11/09/2762543.html -------------------------------------------------------------------------------------------------------------------- grep正则表达式元字符集: ^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行. $ 锚定行的结束 如:'grep$…
先说明语系对正则表达式的影响    LANG=C:0,1,2,3,4...A,B,C,D...Z a b c d ... z    LANG=zh_CN:0,1,2,3,4...a A b B c C d D... z Z因为不同语系用[a-z]筛选的不同,所以出现了特殊符号[:alnum:]  :  即0-9,a-z,A-Z,英文大小写字符和数字,[:alpha:]   :  即a-z,A-Z,任何英文大小写字符[:digit:]      :  即0-9,所有数字[:upper:]   : …
一.概念 正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一组特殊字符,组成一个"规则字符集合",根据用户指定的文本模式对目标文件进行逐行搜索匹配,显示能被模式匹配到的结果. 给定一个正则表达式和另一个目标字符串,我们可以从给定的字符串中通过匹配模型,过滤字符串中不想要的的字符串,得到目标字符串,减少工作量. 常用的正则表达式一般分为基本正则表达式grep和扩展正则表达式egrep. 二.基本正则表达式grep 基本正则表达式grep: Global search Regular…
正则表达式与通配符的区别: 最常应用正则表达式的命令是grep(egrep),sed,awk. 正则表达式和通配符有本质区别,正则表达式用来找:[文件]内容,文本,字符串.一般只有三剑客支持.通配符用来找:文件名.普通命令都支持 正则表达式的分类 POSIX规范将正则表达式的分为了两种 基本正则表达式(BRE,basic regular expression) 高级功能:扩展正则表达式(ERE,extended regular expression) BRE和ERE的区别仅仅是元字符的不同 BR…
一.grep grep家族grep.egrep.fgrepGlobally search a Regular Expression and Print根据我们提供的模式进行查找,并且将文件中匹配的行显示出来模式:pattern,纯字符串或元字符构成的匹配条件 grep工作在贪婪模式下 grep grep [OPTIONS] PATTERN [FILE...] --color:将匹配模式的部分以高亮彩色的方式进行显示 -i:忽略大小写进行匹配 -v:反向选择,将没有匹配到的显示出来 -o:只显示匹…
正则表达式的() [] {} 有着不同的意思. () 是为了提取匹配字符串的,表达式中有几个()就有几个相应的匹配字符串 (\s*)表示连续空格的字符串 [] 是定义匹配的字符范围.比如[a-zA-Z0-9]表示相应位置的字符要匹配英文字符和数字.[\s*] 表示空格或者*号 {}一般是用来匹配的长度.比如A{3}表示匹配三个A,B{1,3}表示匹配1到3个B (0-9)匹配'0-9'本身.[0-9]*匹配数字(注意后面有*,可以为空)[0-9]+匹配数字(注意后面有+,不可以为空), {0-9…
Grep with Regular Expression grep命令基本用法 grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明: -a:将二进制文档以文本方式处理-c:显示匹配次数-i:忽略大小写差异-n:在行首显示行号-A:After的意思,显示匹配字符串后n行的数据-B:before的意思,显示匹配字符串前n行的数据-v:显示没有匹配行--color:以特定颜色高亮显示匹配关键字 针对“–color”选项,在.bashrc…
grep正则表达式元字符集: ^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行. $ 锚定行的结束 如:'grep$'匹配所有以grep结尾的行. . 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p. * 匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行. .*一起用代表任意字符. [] 匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep. [^] 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]…
下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.或一个 向后引用.或一个八进制转义符.例如,'n' 匹配字符 "n".'\n' 匹配一个换行符.序列 '\\' 匹配 "\" 而 "\(" 则匹配 "(". ^ 匹配输入字符串的开始位置.如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置. $…
基本语法一个正则表达式通常被称为一个模式(pattern),为用来描述或者匹配一系列符合某个句法规则的字符串. 一.选择:| |   竖直分隔符表示选择,例如"boy|girl"可以匹配"boy"或者"girl" 二.数量限定:+ ? * +表示前面的字符必须出现至少一次(1次或多次),例如,"goo+gle",可以匹配"gooogle","goooogle"等: ?表示前面的字符最多出…
正则表达式:正规的表示法,常规的表示法(Regular Expression)正则表达式使用单个字符串来描述,匹配一系列的符合某个句发规则的字符串. 1)命令格式; grep  [正则] 字符串 文件 2)命令参数 ^ 以什么开头 $ 以什么结尾 \ 转义字符 * 重复0个或者多个前面的一个字符 .* 匹配所有的字符 [] 列出里面想要的字符 [n1-n2] 列出里面想要包括的字符范围 . 有一个任意字符 [^]# 匹配一个不在指定范围内的字符 \(..\) 标记匹配字符 \< 锚定单词的开始…
使用命令为grep -E 及egrep [root@MongoDB ~]# cat mike.log I am mike! I like linux. I like play football, tennis and reading. my qq is ! my blog is https://i.cnblogs.com my blog is i.miek.com I am miek. not MIEK NOT MIKE miiike miiiie me 1. + 重复一个或一个以上前面的字符…
正则 1. 普通正则表达式 2. 扩展正则表达式 普通正则表达式 . 任意一个字符 * 前面一个字符出现0次或者多次 [abc] 中括号内任意一个字符 [^abc] 非括号内任意一个字符 [0-9] 表示一个数字 [a-z] 任意一个小写字母 [A-Z] 任意一个大写字母 [a-zA-Z] 任意一个所有字母 [a-zA-Z0-9] 任意一个所有字母+数字 [^0-9] 非数字 ^xx 以xx开头 xx$ 以xx结尾 \d 任意一个数字 \s 任意一个空白字符 扩展正则表达式,在普通正则符号再进行…
1.“ \  ” 用法 用于关闭其后续字符的特殊含义,恢复字符的本身含义,如:\\ 表示字符 \ 2. “ . " 用法 匹配任意单个字符 3. " * " 用法 匹配任意字符,可以是单个,也可以是多个,和 ”.“ 字符的去吧是是否可以匹配多个任意字符 4. "^" 的用法 在行的起始处开始匹配紧接着的字符,如 ^6,匹配行的首字符为6的行. 5." $ " 的用法 和 “^” 用法相似,表示在行的结尾处开始匹配字符,如 6$,匹配行的…
基础正则表达式 ^ : 以xx开头 $ :以xx结尾 ^$ :代表空行 .   任意一个字符 \   :转义符号,让有着特殊意义的字符可被使用 * :重复0个或多个前面的字符,例如 a* 2表示a后面没有内容,或者a后全部是a,  aaaaaaaa...2 .*  :匹配所有字符,因为.就是任意一个字符,然后*任意一个字符可0个或多个 []    :字符集和,可匹配中括号中的任意一个字符,比如b[lo]g,等同匹配blog boog [^] :表示非  比如[^ha]   不包含ha任意一个词的…
正则表达式是以行为单位对字符串进行处理. 1.^ 以xxx开头=>比如在过滤出当前目录下的文件夹.发现文件夹都是以d开头的,那么这个命令就可以这么写 ls -l | grep ^d   过滤出以d开头的内容,就相当于过滤出所有的文件夹目录 ls -l | grep ^_  过滤出所有以下划线_开头的,即过滤出当前目录下的文件,只显示以_开头的内容 ls -l | grep -v ^_将下划线开头的不显示 [^d]   ^在中括号中,表示非, 2.$ 以xxx结尾. ls -F 给文件结尾加标识,…