正则表达式

grep命令及正则表达式

人走茶凉 提交于 2020-01-01 12:48:22
grep:global search regular expression(RE) and print out the line 文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配到的行。 基本语法 grep [option] 'PATTERN' file, ... 正则表达式 :是一类字符所书写出的模式(pattern) 元字符 :不表示字符本身的意义,用于额外功能性的描述 此处表达式分为基本正则表达式和扩展正则表达式。 基本正则表达式的元字符 : 字符匹配 :. . : 任意单个字符 grep --color=auto Boot /etc/rc.d/rc.sysinit grep --color=auto 'B..t' /etc/rc.d/rc.sysinit grep --color=auto 'r..t' /etc/passwd []: 指定范围内的任意单个字符 [^]: 指定范围外的任意单个字符 [0-9], [[:digit:]] 数字 [a-z], [[:lower:]] 小写字母 [A-Z], [[:upper:]] 大写字母 [[:alpha:]] 字母 [[:alnum:]] 字母和数字 [[:space:]] 空格 [[:punct:]] 标点符号 alias cgrep='grep --color=auto' cgrep '

C++11正则表达式 ECMAScript文法

不羁岁月 提交于 2020-01-01 12:48:05
突然想写个爬虫,然后发现,如果有正则表达式,会方便些。 C++11提供了Regex类.可以用来完成: 1.Match: 将整个输入拿来比对(匹配)某个正则表达式。 2.Search:查找“与正则表达式吻合”的子序列。 3.Tokenize:正则表达式作为分割器,得到分割器之前的字符串。 4.Replace:将与正则表达式吻合之的子序列替换掉 主要函数有: regex_match(),regex_search(),regex_replace(); 主要对象:sregex_iterator,sregex_token_iterator,regex,smatch 例子: [_[:alpha:]][_[:alnum:]]* 表示,以_或字母开头,后面接着任意个_或字母的组合 [123]?[0-9]\.1?[0-9]\.20[0-9]{2} 表示german format,如 24.12.2010 C++11默认使用 ECMAScript 文法,告诉你怎么构造正则表达式 表示式 意义 . newline以外的任何字符 [...] ...字符中的任何一个 [^...] ...字符之外的任何一个 [ [:charclass:]] 指定字符串类charclass中的一个(见下表) \n,\t,\f,\r,\v 一个newline,tabulator,form feed,carriage return

Oracle正则表达式

爷,独闯天下 提交于 2020-01-01 12:47:25
Oracle正则表达式(regularexpression) 元字符 字符含义 举例说明 ^ 匹配字符串的开始位置(在[]中使用,此时它表示不接受该字符集合。 ^a:匹配以a开始的字符串 [^a]:匹配不含a的字符串 - 当使用在a-m表示范围; 当使用在第一个字符时表示 连字符串,如[-abc] $ 匹配字符结束位置 ‘a$’:匹配以a结束的字符串 . 匹配除换行符 n之外的任何单字符。 ? 匹配前面的子表达式零次或一次 tr(y(ing)?):可以表示try或者trying * 匹配前面的子表达式零次或多次 + 匹配前面的子表达式一次或多次 () 标记一个子表达式的开始和结束位置 a(b)*可以匹配 ab,abb,abbb,youabb (c|d)匹配c或d [] 标记一个中括号表达式 [cd]匹配选择c或d等同于 (c|d)。匹配的是单字符,[^cd]是匹配c,d之外的单字符。 [a-z]表示所有小写字母 {m,n} m= <出现次数 <=n,'{m}'表示出现m次,'{m,}'表示至少出现m次。 | 表示或者的关系。指明两项之间的一个选择 字符簇 字符含义 [[:alpha:]] 任何字母。 [[:digit:]] [[:digit:]] 任何数字。 [[:alnum:]] 任何字母和数 [[:space:]] 任何白字符。 [[:upper:]] 任何大写字母。 [[

正则表达式

ε祈祈猫儿з 提交于 2020-01-01 12:46:34
四、文件名通配 文件名通配 gloabbing * 匹配任意长度的字符,可以是空字符串 ? 匹配一个字符,但不可为空 \ 可以做转义使用,也可作为续行符号 [] 匹配一个序列中的任意一个 [0-9][a-z][a-zA-Z] 选择其中的任意一个 [^] 取反的意思 [^0-9] 除了0-9之外的任意单个字符 [[:space:]] 所有的空白字符 [[:punct:]] 标点符号 [[:lower:]] 小写字母 也可用 [a-z]表示 [[:upper:]] 大写字母 也可用[A-Z]表示 [[:alpha:]] 大小写字母 也可用[a-zA-Z]表示 [[:digit:]] 数字 也可用[0-9]表示 [[:alnum:]] 数字和大小写字母 也可用[0-9a-zA-Z]表示 五、正则表达式 基本正则表达式: . 匹配任意单个字符 [^] 匹配指定范围外的任意单个字符 不需要转义 [] 匹配指定范围内的任意单个字符,不需要转义 ^ 匹配行首 $ 匹配行尾 \? 匹配前面出现字符的0个或1个字符 * 匹配前面的字符任意次数 .* 匹配任意长度的任意字符 \{m,n\} 匹配其前面的字符至少m次,至多n次,需要转义 \(\) 后向引用 \< = \b 其后面的任意字符必须作为单词首部出现 \> = \b 其前面的任意字符必须作为单词的尾巴出现 ^$空白行 扩展正则表达式: 字符匹配

关于正则表达式

烂漫一生 提交于 2020-01-01 12:45:35
也是刚接触ctf不久,在做题的过程中,也是学到了不少东西。 刚开始是从南邮的题目入手的,不过再做过bugku上面的题之后,觉得这上面的更适合新手入门。 题的难度与易到难,每道题所需要的知识点也非常清晰。 前几天在做 字符?正则?这道题时,对正则略有心得,就想写篇文章,发表一下拙见。 毕竟是新手,又是第一次写文章,若是有出错的地方,还请大家多包涵,多指教。 对于正则表达式,只要我们能把这个表达式看懂,能够很好的理解它所要表达的内容,然后输入符合要求的字符串就行了。 那么,对于新手来说,怎么才能看懂这让人头疼的正则表达式呢。 这里网上有一个很详细的教程,大家可以看一下,我也是看完之后,才了解正则表达式的 https://www.cnblogs.com/superstar/p/6638970.html 下面,来看下bugku上面这道关于正则的题,源代码如下: <?php highlight_file('2.php'); $key='KEY{********************************}'; $IM= preg_match("/key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i", trim($_GET["id"]), $match); if( $IM ){ die('key is: '.$key); } ?> 代码里

Jmeter接口测试

戏子无情 提交于 2019-12-31 23:24:34
接口测试是什么 1.1接口  API(Application Program Interface)接口属于操作系统的程序接口。  GUI (Graphic User Interface)接口,属于一种图形接口。  2者都是用户接口。有时候公司将API作为为公共接口,对外开放。 1.2接口测试 接口测试是测试系统组件间的一种测试 接口测试主要用于检查外部系统和系统之间以及内部各个子系统之间的交互点。 1.3接口测试目的  提供测试效率,提供用户体验度,减少研发成本  对系统接口进行全面(功能,安全,性能)高效的持续的测试;  接口测试是一个完整的系统,包括了功能测试,部分的安全测试,性能测试。  可以发现很多页面上发现不了的bug  检查系统的异常处理能力  前端随意变,接口测好了,后端不用变 1.4接口测试工具 HTTPWatch,Fildder,浏览器自带F12,BurpSuit、LoadRunner,Soapui、jmeter,postman 1.4.1客户端请求消息 请求消息包括以下格式:请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据4个部分组成。如图1所示: 1.4.2服务端响应消息: HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。如图2所示: 1.4.3请求方法

Jmeter接口测试

若如初见. 提交于 2019-12-31 23:22:28
接口测试是什么 1.1接口  API(Application Program Interface)接口属于操作系统的程序接口。  GUI (Graphic User Interface)接口,属于一种图形接口。  2者都是用户接口。有时候公司将API作为为公共接口,对外开放。 1.2接口测试 接口测试是测试系统组件间的一种测试 接口测试主要用于检查外部系统和系统之间以及内部各个子系统之间的交互点。 1.3接口测试目的  提供测试效率,提供用户体验度,减少研发成本  对系统接口进行全面(功能,安全,性能)高效的持续的测试;  接口测试是一个完整的系统,包括了功能测试,部分的安全测试,性能测试。  可以发现很多页面上发现不了的bug  检查系统的异常处理能力  前端随意变,接口测好了,后端不用变 1.4接口测试工具 HTTPWatch,Fildder,浏览器自带F12,BurpSuit、LoadRunner,Soapui、jmeter,postman 1.4.1客户端请求消息 请求消息包括以下格式:请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据4个部分组成。如图1所示: 1.4.2服务端响应消息: HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。如图2所示: 1.4.3请求方法

Linux日常之命令awk

Deadly 提交于 2019-12-30 19:04:17
一. 命令awk简介     1. awk是一种编程语言,用于对文本和数据进行处理的     2. 具有强大的 文本格式化 能力     3. 利用命令awk,可以将一些文本整理成为我们想要的样子     4. 命令awk是 逐行 进行处理的 二. grep、sed、awk的简单比较     1. 命令grep,更适合单纯的查找或匹配文本     2. 命令sed,更适合对匹配到的文本进行编辑     3. 命令awk,更适合文本格式化,对文本进行较复杂的格式处理 三. 命令awk基本语法     awk [options] 'pattern{action}' file    1. 在没有options和pattern的情况下,使用命令awk          2. pattern包括两种特殊模式,分别是BEGIN和END     (1)BEGIN模式,是指命令在处理文本 之前 执行          (2)END模式,是指命令在处理文本 之后 执行     (3)BEGIN模式和END模式同时存在时,其中, BEGIN与END之间的{}相当于一个循环体,对文件中的每一行进行处理        3. 常用的参数     (1)-F,用于指定输入分隔符          (2)-v,用于设置变量的值                 从文件中输入变量      四. 变量  

awk.sed.grep三剑客详解

我怕爱的太早我们不能终老 提交于 2019-12-30 18:51:17
事前准备 1.主机 node1:172.16.133.11 2.作为实验的文件 /etc/passwd /etc/fstab qinqin cp /etc/passwd . cp /etc/fstab . 一、grep用法详解 1.grep是干什么的 grep的全名是Galobal research Regular Expression and Pringtiong,即搜索正则表达式,也就是说grep简单来讲就是用来搜索匹配字符的 2.grep分类 grep有基本正则表达式和扩展正则表达式之分,不过她们的作用域和使用方法大同小异 3.grep用法及选项 首先普通的用法:grep [option] 'PATTERN' file file2... 例:grep 'root' /etc/passwd搜索在/etc/passwd中的root字符的那一行 选项: --color将搜索到的字符予以颜色加以标识,易于辨认 grep --color 'root' passwd -v取反,即除了匹配到的行其余都显示 grep -v 'root' passwd -i忽略大小写进行匹配 grep -i 'label' fstab -o仅显示匹配到的字符串 grep -o 'root' passwd 单独显示本机ip地址和子网掩码 ifconfig | grep -E -o --color "\<([1