文本三剑客之使用正则表达式的grep实例

文本三剑客之使用正则表达式的grep实例


实例1、从/etc/passwd文件中查找匹配root模式所匹配的行

grep 'root' /etc/passwd --color

wKioL1NH6KLgcDqkAADoS-M7D1c537.jpg

实例2、从grep1.txt中查找至少9个小写字母出现的行

grep '[a-z]\{9\}' grep1.txt--color

wKioL1NH6MrgdIInAAEQrzlUgVo161.jpg

实例3、从grep1.txt文件中打印grep1.txt文件中所有包含miss的行

grep'miss' grep1.txt--color

wKiom1NH6ReT9GqXAADVK_BVYjs847.jpg

实例4、从grep1.txt文件中打印所有以m开头的行

grep m* grep1.txt--color

wKioL1NH6STST2UmAAGE_eNmLSY601.jpg

实例5、从grep1.txt文件中打印所有以字母i开头的行

grep '^i' grep1.txt--color

wKiom1NH6XajJBm8AADNSTEr7k0320.jpg

实例6、从grep1.txt文件中打印所有以数字1结尾的行

grep'1$' grep1.txt--color

wKioL1NH6dKQc_8jAACyQycDqGU233.jpg

实例7、从grep1.txt文件中打印所有包含模式 mi ss的所有行

grep 'mi ss' grep1.txt--color

wKiom1NH6iXTd9PNAAIAW7PNgiQ333.jpg

实例8、从grep1.txt文件中打印所有以数字62开头,后面跟了一个句点,再跟一个任意字符的行

grep '62\..'grep1.txt--color

注释:句点这个元字符通常代表单个字符,除非它做反斜杠转义。

句点被转义之后就不再是特殊的元字符,而只代表其本身,即一个句号。

wKiom1NH6muQ-aYFAAC-KJOLUns218.jpg

实例9、从grep1.txt文件中打印所有以句点开头,后面跟了任意一个数字的行

grep '\.[0-9]' grep1.txt--color

wKiom1NH6pqgrMdvAACrF0oAcqU513.jpg

实例10、从grep1.txt文件中打印所有以非数字开头的行

grep [^0-9] grep1.txt--color

wKioL1NH6qWyUJZlAAIWNDjcS5M191.jpg

实例11、从grep1.txt中打印所有包含以miss单词开头的所有行

grep '\<miss' grep1.txt--color

注释:\<是词首定位符

wKiom1NH6y2hzJYkAAD5mP_dbjQ065.jpg

实例12、从grep1.txt文件打印所有包含单词miss的行

grep'\<miss\>'grep1.txt--color

注释:\<是词首定位符,\>是词尾定位符

wKioL1NH6yrhLep4AAExzZ0vYMM413.jpg

实例13、从grep1.txt文件中打印所有以小写字母开头,以s结尾,中间由任意多个字符组成的单词的行。

grep '\<[a-z].*s\>' grep1.txt--color

注释:符号.*代表任意字符,包括空格

wKiom1NH63yhnQgMAAGFhB6JuFA061.jpg

grep的一些常用选项


1、grep1.txt文件中打印所有以love开头的行,并标记行号

grep '\<[a-z].*s\>' grep1.txt--color

-n在找到指定模式的行前面加上其行号再一并输出

wKioL1NH67KTDWUbAAEWeLS92JY664.jpg

2、grep1.txt文件中打印所有包含miss的行,不缺分大小写

grep-i 'miss' grep1.txt--color

-i选项关闭大小写敏感性

wKioL1NH6-3xurPaAAG1MIq3ago739.jpg

3、grep1.txt文件中打印所有不包含模式a-z所有小写字母的所有行

grep -v '[a-z]' grep1.txt

wKiom1NH7GjwkaZWAAFBvnnnaWs643.jpg

4、grep1.txt文件中输出包含keep模式的文件名,并不显示其文本

grep -I 'keep' grep1.txt--color

wKiom1NH7JWwr95EAAD1ke2nths081.jpg

5-c grep打印出含有模式的行的数目这个。这个数字并不代表模式的出现次数,例如

即使miss在某行中出现了3次,这行也只计一次。

grep -c 'miss' grep1.txt--color

wKiom1NH7NPgQYevAACX5btWKMo190.jpg

6、从grep1.txt文件中只打印

-w选项使grep只查找作为一个词,而不是词的一部分出现的模式。

grep -w  'beautiful' grep1.txt --color


wKioL1NH7M_Co6vGAAD_JHGF3_0622.jpg

grep与管道


grep的输入并不一定都是文件,它也常常从管道读取输入

[root@localhost data]# ls -l
总用量 12
drwxr-xr-x. 2 root root 4096 4月11 20:04 dir1
-rw-r--r--. 1 root root 1970 4月11 19:45 grep1.txt
-rw-r--r--. 1 root root0 4月11 19:47 logname.txt
-rw-r--r--. 1 root root388 4月11 17:21 test1.txt
[root@localhost data]# ls |grep ^d
dir1

ls的命令通过管道传送给grep.输出结果中以zimud开头的所有行都被打印出来,也就是说,所有目录都被打印出来

wKioL1NH7QXyrJSuAAFlM4-I0-Y107.jpg

附文中所用代码:

imissyousomuch
i miss you so much
iloooooooooovyou so much!
looooooooooove rose so much!
Todayisthefirst time we......
linuc linus linuc
like love likke lovve
I miss you so much!
i miss you so much!
Miss zhang is teaching our english
I MISS YOU SO MUCH!
MISS li
love me love my all  2014 04 11
 darling i miss you so mucn 04 11
mi ss  miss miss
mi miss you so much!
ss miss you soooo much!
62.73.115.50
62.  33  33 33
6.2. 73
.6 .8
.1
.2
.3
.4
.5
.6
.66
miss sdffsffsffss      ssuousourusoss
love your parents. We are too busy growing up yet we forget that they are
already growing
old――多关心一下自己的父母吧,我们总忙着自己成长,却忘了他们也在变老。
The moment you think about giving up,think of the reason why you held on so
long――每当你想放弃的时候,想一想是什么支撑着你一路坚持。
I don't wanna be your 'number one' that implies there are a number two and
maybe a number three. I want to be your only
one――我不想做你的“第一”,因为那就意味着还有第二,第三……我只想做你的“唯一”。
Total umbrella for someone else if he,you're just not for him in the
rain.――如果他总为别人撑伞,你又何苦非为他等在雨中。
Hold my hand,you won't get lost even with eyes closed.
――握住我的手,即使你�上眼睛也不�迷路。
We never really grow up. We only learn how to act in public.
――我们从未真正长大,我们只是在别人面前学会了假装。
Each trauma,is another kind of maturity. ――每一种创伤,都是另一种成熟。
Fortune favours the brave――运气往往眷顾勇敢的人。
You keep on concentrating on the things you wish you had or things you wish
you didn’t have and you sort of forget what you do have.-Nick
Vujicic――如果你不停的纠结于你所没有的或者不想要的,你就会忘记你真正拥有的。―尼克胡哲
beautiful
beautifulest

限于作者水平有限,文中难免有错误和不足之处请大家多多指点

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jquery.validate使用攻略(表单校验) 目录 jquery.validate使用攻略1 第一章&#160;jquery.validate使用攻略1 第二章&#160;jQuery.validate.js API7 Custom selectors7 Utilities8 Validato
/\s+/g和/\s/g的区别 正则表达式/\s+/g和/\s/g,目的均是找出目标字符串中的所有空白字符,但两者到底有什么区别呢? 我们先来看下面一个例子: let name = &#39;ye wen jun&#39;;let ans = name.replace(/\s/g, &#39;&#3
自整理几个jquery.Validate验证正则: 1. 只能输入数字和字母 /^[0-9a-zA-Z]*$/g jQuery.validator.addMethod(&quot;letters&quot;, function (value, element) { return this.optio
this.optional(element)的用法 this.optional(element)是jquery.validator.js表单验证框架中的一个函数,用于表单控件的值不为空时才触发验证。 简单来说,就是当表单控件值为空的时候不会进行表单校验,此函数会返回true,表示校验通过,当表单控件
jQuery.validate 表单动态验证 实际上jQuery.validate提供了动态校验的方法。而动态拼JSON串的方式是不支持动态校验的。牺牲jQuery.validate的性能优化可以实现(jQuery.validate的性能优化见图1.2 jQuery.validate源码 )。 也可
自定义验证之这能输入数字(包括小数 负数 ) &lt;script type=&quot;text/javascript&quot;&gt; function onlyNumber(obj){ //得到第一个字符是否为负号 var t = obj.value.charAt(0); //先把非数字的都
// 引入了外部的验证规则 import { validateAccountNumber } from &quot;@/utils/validate&quot;; validator.js /*是否合法IP地址*/ export function validateIP(rule, value,cal
VUE开发--表单验证(六十三) 一、常用验证方式 vue 中表单字段验证的写法和方式有多种,常用的验证方式有3种: data 中验证 表单内容: &lt;!-- 表单 --&gt; &lt;el-form ref=&quot;rulesForm&quot; :rules=&quot;formRul
正则表达式 座机的: 例子: 座机有效写法: 0316-8418331 (010)-67433539 (010)67433539 010-67433539 (0316)-8418331 (0316)8418331 正则表达式写法 0\d{2,3}-\d{7,8}|\(?0\d{2,3}[)-]?\d
var reg = /^0\.[1-9]{0,2}$/;var linka = 0.1;console.log (reg.test (linka)); 0到1两位小数正则 ^(0\.(0[1-9]|[1-9]{1,2}|[1-9]0)$)|^1$ 不含0、0.0、0.00 // 验证是否是[1-10
input最大长度限制问题 &lt;input type=&quot;text&quot; maxlength=&quot;5&quot; /&gt; //可以 &lt;input type=&quot;number&quot; maxlength=&quot;5&quot; /&gt; //没有效
js输入验证是否为空、是否为null、是否都是空格 目录 1.截头去尾 trim 2.截头去尾 会去掉开始和结束的空格,类似于trim 3.会去掉所有的空格,包括开始,结束,中间 1.截头去尾 trim str=str.trim(); // 强烈推荐 最常用、最实用 or $.trim(str);
正则表达式语法大全 字符串.match(正则):返回符合的字符串,若不满足返回null 字符串.search(正则):返回搜索到的位置,若非一个字符,则返回第一个字母的下标,若不匹配则返回-1 字符串.replace(正则,新的字符串):找到符合正则的内容并替换 正则.test(字符串):在字符串中
正整数正则表达式正数的正则表达式(包括0,小数保留两位): ^((0{1}.\d{1,2})|([1-9]\d.{1}\d{1,2})|([1-9]+\d)|0)$正数的正则表达式(不包括0,小数保留两位): ^((0{1}.\d{1,2})|([1-9]\d.{1}\d{1,2})|([1-9]+
JS 正则验证 test() /*用途:检查输入手机号码是否正确输入:s:字符串返回:如果通过验证返回true,否则返回false /function checkMobile(s){var regu =/[1][3][0-9]{9}$/;var re = new RegExp(regu);if (r
请输入保留两位小数的销售价的正则: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/ 1.只能输入英文 &lt;input type=&quot;text&quot; onkeyup=&quot;value
判断价格的正则表达式 价格的正则表达式 /(^[1-9]\d*(\.\d{1,2})?$)|(^0(\.\d{1,2})?$)/; 1 解析:价格符合两种格式 ^ [1-9]\d*(.\d{1,2})?$ : 1-9 开头,后跟是 0-9,可以跟小数点,但小数点后要带上 1-2 位小数,类似 2,2
文章浏览阅读106次。这篇文章主要介绍了最实用的正则表达式整理,比如校验邮箱的正则,号码相关,数字相关等等,本文给大家列举的比较多,需要的朋友可以参考下。_/^(?:[1-9]d*)$/ 手机号
文章浏览阅读1.2k次。4、匹配中的==、an==、== an9、i9 == "9i"和99p==请注意下面这部分的作用,它在匹配中间内容的时候排除了说明:当html字符串如下时,可以匹配到两处,表示匹配的字符串不包含and且不包含空白字符。说明:在上面的正则表达式中,_gvim正则表达式匹配不包含某个字符串
文章浏览阅读897次。【代码】正则表达式匹配a标签的href。_auto.js 正则匹配herf