我就说扫地僧潜伏在本号背后!
这不,活动刚开始没多一会,邮箱就收到稿子了!
鼓掌!~
一看作者就是早有积累,干货还有很多阿!
好,第一本书送上!感谢支持先:)
GREP语法最早起源于Unix,GREP是Unix系统下用于以关键字对文件内容进行查找的工具,有自己的语法规则(类似于正则表达式)。
GREP语法搜索主要针对具有一定规则的信息的模糊匹配,如符合特定规则的数字,如手机号、银行帐号、IP地址等,可以十六进制方式进行底层的文件内容搜索。
GREP语法需要与文件编码配合使用。
GREP语法元素
“.”表示匹配任何单一的字符
A.表示以A开头的任意两个字符,如:AA Ab A2
“?”表示该符号前的字符出现0或1次
“*”表示重复该符号前的字符n次(n>=0)
例如,sars*表示sar sars Sarss sarsss sarssss……
“+”表示重复该符号前的字符n次(n>0)
例如,Sars+ 表示Sars Sarss Sarsss Sarssss Sarsssss……
“#”号表示任何一个从0到9之间的数字
###可以表示任何一个从000~999之间的数
例如#######可以表示:2516166 3929988 1234567等
“[ ]”方括号里面可以是一个字符集,表示匹配该字符集中任意一个字符
例如,251616[678]可以表示:2516166 2516167 2516168
“[^]”在字符集开头有“ ^ ”,表示不包含该字符集中的任何字符
例如,John[^z]smith可以表示:
Johnasmith John9smith
但是不能表示为Johnzsmith
“[-]”表示方括号里字符的范围(包括起始字符和结束字符)
例如,251616[4-9]可以表示:2516164 2516165 2516167 2516168 2516169
“\”转义字符,表示该字符之后的字符按原字符输出,而并非一个GREP字符
当要表示文件名称和路径时,要小心GREP,斜线和小圆点应该在一个“ \” 之后
“”表示重复括号前的字符m~n次(包括m和n)
例如,Johnsmith可以表示为:
Johnnsmith Johnnnsmith Johnnnnsmith Johnnnnnsmith
不能表示为Johnsmith Johnnnnnnsmith
“(abc)”表示将字符进行分组
“a|b”表示分组之间的并列关系
GREP搜索示例-IP地址搜索
n用GREP语法表达式“#?#?#?\.#?#?#?\.#?#?#?\.#?#?#?”创建关键字。
n选择搜索范围,执行搜索。
n查看搜索结果。
GREP搜索示例-搜索电话号码
固定电话
[^#]####?[\- _]########?[^#]
移动电话
[^#]0?###########[^#]
手机号码的网络识别号
移动:134,135,136,137,138,139,150,151,157,158,159,182,187,188
联通:130,131,132,152,155,156,185,186
电信:133,1349,153,180,189
目前我国使用的手机号码为11位数字,我们的手机号可以分为三段,都有不同的编码含义:前三位是网络识别号、4-7位是地区编码(HLR归属位置寄存器)、8-11位是用户号码(随机分配)。
领取专属 10元无门槛券
私享最新 技术干货