首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Go-Excelize API源码阅读(十九)——SetHeaderFooter

ScaleWithDoc 设定页眉和页脚跟随文档缩放 OddFooter 奇数页页脚控制字符 OddHeader 奇数页页眉控制字符 EvenFooter 偶数页页脚控制字符 EvenHeader 偶数页页眉控制字符...FirstFooter 首页页脚控制字符 FirstHeader 首页页眉控制字符 接下来是OddHeader, OddFooter, EvenHeader, EvenFooter, FirstFooter...如果双下划线模式启用了, // | 一个章节中的下划线会关闭双下划线模式。...DifferentOddEven: true代表奇数和偶数页页眉和页脚是不同的。 OddHeader: "&R&P"代表奇数页的页眉右侧部分为当前十进制的页码。...OddFooter: "&C&F"代表奇数页的页脚中心部分为当前工作簿的文件名。 EvenHeader: "&L&P"代表偶数页的页眉左侧部分为当前十进制的页码。

1.2K30

实战 | WAF-Bypass之SQL注入绕过思路总结

①•可利用其他控制字符替换空格:%09、%0a、%0c、%0d、%16•位置②•可利用其他控制字符替换空格:%09、%0a、%0c、%0d•位置③•可利用其他控制字符替换空格:%09、%0a、%0c、%...•位置②•可利用其他控制字符替换空格:%00、%09、%0a、%0b、%0c、%0d•位置③•可利用其他控制字符替换空格:%00、%09、%0a、%0b、%0c、%0d•可使用其他字符:-、+、%ad•...•位置②•可利用其他控制字符替换空格:%09、%0a、%0c、%0d•位置③•可利用其他控制字符替换空格:%09、%0a、%0c、 %0d•可使用其他字符:....例如匹配函数”concat()”的规则写法,“concat(”或者”concat\s*(”,就没有考虑到一些特殊字符。相应的绕过方法,特殊位置引入特殊的分隔符,逐个测试。...畸形method绕过 某些WAF处理数据的时候严格按照GET、POST等标准HTTP方法来获取数据,或者采用正则匹配的方式来处理数据,可能因为WAF和WEB服务解析的前后不对等绕过WAF。

4.1K10
您找到你想要的搜索结果了吗?
是的
没有找到

计算机网络之数据链路层详解

控制字符,用于标识该帧的开始,结束位置加了ETX控制字符,用于标识该帧的结束。...具体做法是:传输的二进制代码最后专门设置一个奇偶校验位,用它控制这组代码中1的个数为奇数或偶数(具体是偶数还是奇数,要视所采用的是偶校验还是奇校验),然后再在接收端进行校验,看里面的“1”的个数是否仍与原来一样的奇数或偶数...4、流量控制 “流量控制”包括两方面的含义: 一是发送端的数据发送速度与接收端的数据接收速度要匹配,否则接收端来不及接收就会造成数据传输过程中的丢失。...二是发送端的数据发送速度要与线路上的承载速率(与线路信道带宽有关)相匹配,否则也会造成数据传输过程中的丢失 “流量控制”实际上是对发送端数据传输速率的控制,使其数据发送速率不超过接收端所能承受的数据接收能力...物理网段: 指IP地址属于同一网络地址段(也就是IP地址中的网络ID一样),位于不同地理位置的不同LAN分段,是基于物理意义上的地理区域进行划分的。

2.9K20

实战 | WAF-Bypass之SQL注入绕过安全狗

:news_id=1.0,news_id=1E0,news_id=\N •位置② •可以利用其它控制字符替换空格:%09,%0a,%0b,%0c,%0d,%20,%a0•可以利用注释符号替换空格:/**.../、%23test%0d%0a、 --+a%0d%0a•可以利用括号:union(select 1,2) •位置③ •可以利用其它控制字符替换空格:%09,%0a,%0b,%0c,%0d,%20,%a0...例如匹配函数”concat()”的规则写法,“concat(”或者”concat\s*(”,就没有考虑到一些特殊字符。相应的绕过方法,特殊位置引入特殊的分隔符,逐个测试。...[User]/**/where id=1 那么意味着注释符中可以添加大量的无效字符来打破WAF的规则匹配。...=1-1 位置② 可以利用其它控制字符替换空格:%01~%0F、%11~%1F 可以利用注释符号:/**/、—+a%0d%0a 可以利用加号+替换空格:union+select 位置③ 可以利用其它控制字符替换空格

2.1K30

Lua string.gsub (1)

Lua中的模式匹配用正则表达式来描述,它被用于string.find, string.gmatch,string.gsub, 和string.match.匹配一种模式。...:(一个点)代表所有的字符; %a:代表所有的字母; %c:代表所有的控制字符;(自己百度控制字符) %d:代表所有数字; %g:代表除了空格字符的所有可以打印的字符; %l:代表所有的小写字符; %p...任何非字母数字表中的特殊字符都可以用一个百分号后面跟这个字符来进行模式匹配。 [Set]:表示用Set中的所有字符代表的一个字符集合。字符区间可以用“-”,以升序的方式,分隔它的最后的几个字母来表示。...上面讲述的用%x字符组合匹配代表的字符集合还可以用于其它字符集的元素。...你可以一个字符集中的开头位置放置一个].你也可以一个字符集的开头或者结束放置一个连字符。(你也可以两种情况中加入转义字符) 字符区间和字符集合有交叉的情况下,你写的模式匹配是错误的。

91220

3.格式IO

7.可以%和定义转换字符之间通过插入修饰符为基本的转换说明加以修改。...2.一般形式:scanf(“格式控制字符串”,变量地址列表) 格式控制字符串:用于控制输入数据格式,必须以引号引导,内容由一个或多个格式控制字符组合而成,也可以含有非格式控制字符,非格式控制字符称为普通字符...普通字符按原样在对应位置输入。 变量地址列表:用于指定存放数据的变量地址。如果需要给多个变量输入数据,则各变量地址要用逗号隔开。变量地址表示方式是:&变量名。例如,&a表示变量a的地址。...它依次把转换说明与字段相匹配,并跳过它们之间的空格(当格式控制符为%c时例外)。 3)当scanf遇到不匹配数据类型的数据时,ANSI C要求函数第一个出错的地方停止读取输入。...10)Scanf函数的“格式控制字符串”中一般不使用转义字符,否则要按原样在对应位置从键盘输入,为输入数据带来不必要的麻烦。 三.

90420

八爪鱼采集软件正则表达式使用方法

正则表达式(Regular Expression)描述了一种字符串匹配模式,可以用来检查一个字符串是否含有某种子串、将匹配子串做替换或者将匹配的子串提取出来等。...正则表达式语法=普通字符+特殊字符 普通字符=打印字符+非打印字符(元字符) 特殊字符=限定符+定位符 非打印字符:换页符(\f)、换行符(\n)、回车符(\r)、制表符(\t)、垂直制表符(\v)、控制字符...(\cM)、匹配任何空字符(\s)、匹配任何非空字符(\S) **()改为英文半角符号() 特殊字符: $:输入字符串结尾位置 ():标记一个子表达式开始于结束位置 *:前面的子表达式0次或者多次 +...:匹配前面的子表达式0次或者1次,非贪婪 :转义字符 ^:匹配输入字符串的开始位置 {、}:限定表达式开始的地方 限定符:*、+、?、{n}、{n,}、{n,m} *、+、?...区别:贪婪非贪婪 {n}、{n,}区别:匹配确定的次数与匹配至少的次数 例:

1.7K20

正则表达式--基本正则表达式

匹配任意单个字符 [ ] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 匹配任意数字或字母 [:alpha:] 匹配任意英文大小写字母 [:upper...键 [:cntrl:] 匹配不可打印的控制字符(退格、删除) [:digit:] 匹配0-9之间的任意单个数字 与[0-9]等效 [:xdigit:] 匹配十六进制数字 [:graph:] 匹配可打印的非空白字符...匹配前面的字符0次或1次 \+ 匹配前面的字符至少一次 \{n\} 匹配前面的字符n次,精确匹配 \{,n\} 匹配前面的字符至多nu次 \{n,\} 匹配前面的字符至少n次 \{m,n\}...匹配前面的字符至少m次,至多n次 位置锚定 字符 说明 备注 ^ 锚定行首 $ 锚定行尾 ^$ 匹配窄 \<或\b 锚定词首 \>或\b 锚定词尾 \ 匹配整个单词 \B 匹配非单词边界...,与\b相反 分组引用 字符 说明 备注 \( \) 分组 $1,$2 引用 分组中,一个括号为一组,$1开始,$2,$3...

87520

正则表达式--扩展正则表达式

匹配任意单个字符 [ ] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 匹配任意数字或字母 [:alpha:] 匹配任意英文大小写字母 [:upper...:] 匹配任意大写字母 与[A-Z]等效 [:lower:] 匹配任意小写字母 与[a-z]等效 [:blank:] 匹配空白字符(空格和制表符) [:space:] 匹配任意空白字符,包括空格或tab...键 [:cntrl:] 匹配不可打印的控制字符(退格、删除) [:digit:] 匹配0-9之间的任意单个数字 与[0-9]等效 [:xdigit:] 匹配十六进制数字 [:graph:] 匹配可打印的非空白字符...[:print:] 匹配可打印字符 [:punct:] 匹配任意标点符号 [^[:alpha:]] 匹配单个非字母字符 [^[:digit:]] 匹配单个非数字字符 次数匹配 字符 说明...匹配前面字符0次或1次 + 匹配前面字符至少一次 匹配前面字符m次 {m,n} 匹配前面字符至少m次,至多n次 位置锚定 字符 说明 备注 ^ 锚定行首 $ 锚定行尾 \< 或 \b 锚定词首

72920

蓝桥杯 基础训练 完美的代价--------------C语言—菜鸟级

}//统计每个相同字符的数量 else //用于判断字符串能否构成字符串; { if(t%2==1)t1++;//若字符数量为奇数...else { i=0;//从第一位字符(0位)寻找对应字符;第一位对应最后一位 因此需找到与之匹配的字符换到最后一位 for(j=len-1;j>i;j--)//为次数最小则就近原则...从后向前查找遇到的第一个匹配字符则通过相邻字符交换 { for(t=j;t>i;t--)//到对应位置匹配字符位到与查找对应位置根据交换原则,交换后两个交换位置...if(a[t]==a[i])//之间 的字符循序不变 可视为移位插入法(i 对应位置 是j 匹配字符 是t;则从t交换 {sum+=j-t;//到j 则需 j-t 次;...// 且不是查找 中心(奇数)字符 的对应位 } // 则先将 中心(奇数

29150

正则表达式基本语法

如果设置了 RegExp 对象的 Multiline 属性,^ 还会与“\n”或“\r”之后的位置匹配。$匹配输入字符串结尾的位置。...“er\B”匹配“verb”中的“er”,但不匹配“never”中的“er”。\cx匹配 x 指示的控制字符。\d数字字符匹配。等效于 [0-9]。\D非数字字符匹配。等效于 [^0-9]。...如果设置了 RegExp 对象的 Multiline 属性,^ 还会与“\n”或“\r”之后的位置匹配。 $ 匹配输入字符串结尾的位置。...\B 非字边界匹配。“er\B”匹配“verb”中的“er”,但不匹配“never”中的“er”。 \cx 匹配 x 指示的控制字符。 \d 数字字符匹配。等效于 [0-9]。 \D 非数字字符匹配。...\B 非字边界匹配。“er\B”匹配“verb”中的“er”,但不匹配“never”中的“er”。 \cx 匹配 x 指示的控制字符。 \d 数字字符匹配。等效于 [0-9]。 \D 非数字字符匹配

93070

正则表达式特殊字符

非打印字符\cx 匹配由x指明的控制字符。例如, \cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。...\t 匹配一个制表符。等价于 \x09 和 \cI。\v 匹配一个垂直制表符。等价于 \x0b 和 \cK。COPY特殊字符$ 匹配输入字符串的结尾位置。...序列 '\\' 匹配 "\",而 '\(' 则匹配 "("。^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,当该符号方括号表达式中使用时,表示不接受该方括号表达式中的字符集合。...COPY定位符^ 匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与 \n 或 \r 之后的位置匹配。$ 匹配输入字符串结尾的位置。...如果设置了 RegExp 对象的 Multiline 属性,$ 还会与 \n 或 \r 之前的位置匹配。\b 匹配一个单词边界,即字与空格间的位置。\B 非单词边界匹配

98020

printf漏洞介绍

printf(format,) 1、概念 printf接受变长的参数,其中第一个参数为格式化字符串,后面的参数实际运行时将与格式化字符串中特定的子字符串进行对应,将格式化字符串中的特定字串...2、漏洞成因 printf函数执行时,首先进行格式化字符串的解析–从栈(或者寄存器)获取参数并与符号说明进行匹配,然后将匹配的结果输出到屏幕上,那么 ,如果格式化字符串中的符号声明与栈上参数不能正确匹配...而本书,printf也就是一个有力的攻击武器,我们可以通过控制字符串的值来实现更多的泄露或者完成个高级的利用。...3、实例代码 gcc编译之后用gdb打开 我们可以看到红框内edx是“My name is %s”,这个时候注意我们的代码,printf后面是没有跟参的,本该压参的位置没有参数,导致了压入的是“

9910

实战 | BypassD盾之SQL注入绕过总结

=1-1 位置② 可以利用其它控制字符替换空格:%01~%0F、%11~%1F 可以利用注释符号:/**/、—+a%0d%0a 可以利用加号+替换空格:union+select 位置③ 可以利用其它控制字符替换空格...(注:其中-、~、.号必须是select查询的第一个字段的数据类型为数字型才能使用) 可以利用小括号()替换空格:select(1),2,db_name() 位置④ 可以利用其它控制字符替换空格:%01...~%0F、%11~%1F 可以利用注释符号:/**/、—+a%0d%0a 可利用其他字符:%80~%FF(需要IIS服务器支持) 位置⑤ 可以利用其它控制字符替换空格:%01~%0F、%11~%1F 可以利用注释符号...规则缺陷/特性:%00时会被认为读取已结束 url中%00表示ascll码中的0 ,而ascii中0作为特殊字符保留。...这里并没有将>进行解码,而是将&符进行编码 我们可以利用这个特性,使用这串字符去绕过某些多个关键字匹配的规则,如:union…select、order…by、/*…*/、'…' 等 绕过 and

3.6K30

从零掌握正则表达式

前言 无论你是出于什么原因需要掌握正则表达式(诸如爬虫、文本检索、后端服务开发或Linux脚本),如果之前从没接触过正则表达式(比如我)很容易如山般的公式中迷失,以至于你项目写的正则表达式很可能会因为组织混乱而被后来的开发者吐槽...image.png 从通配符讲到正则表达式 操作系统上或者SQL中我们经常接触到通配符的使用,比如模糊搜索文件(比如*.dat表示匹配所有以.dat为后缀的文件)。常用的通配符包括: ?...\cx:匹配由x指明的控制字符,例如\cM匹配一个Control-M或者回车符,x的值必须为A-Z或a-z之一 \f:匹配一个换页符 \n:匹配一个换行符 \r:匹配一个回车符 \s:匹配任何空白字符...就可以实现非贪婪或者最小匹配。 4. 定位符 ^:匹配输入字符串开始的位置 $:匹配输入字符串结尾的位置 \b:匹配一个单词边界,即字与空格间的位置 \B:非单词办结匹配 5....[^a-z]:匹配任何不在指定范围内的任意字符 \b:匹配一个单词边界,即单词和空格间的位置 \B:匹配非单词边界 \cx:匹配由x指明的控制字符 \d:匹配一个数字字符 \D:匹配一个非数字字符

83120

Bash:选择结构之case

没错,casebash中的地位,和switchC中的地位一样。但是用法可大有不同。 代码块 任何语言都有代码块的概念,C语言中的花括号{ },python中的冒号和缩进。...中,case后面如果不加break,那么执行完匹配的语句后,将接着执行,而不管下面的条件匹配匹配,直到遇到break为止。...难道末尾加一个分号?错错错。答案是一个分号加一个扭号。 #!...注意我上面用到了 ;;& 也就是说匹配了一个模式之后,不会停止,还会继续向下执行。执行效果: ? 枚举字符串 一般的写法比如(123|456|789)匹配123,456,789这三个数。...当然了有些字符(比如控制字符)貌似不好输入。这样不好测试[:cntrl:]这个字符类,这里我告诉您一下,ascii码中27对应的控制字符就是ESC。测试脚本的时候,可以按一下ESC键。

86710

字符串--最长回文子串(暴力讲解+Manacher)

问题描述:给你一个字符串str,若子串s是回文串,则称s为str的回文子串,求s的最大长度 解法一:暴力匹配 对每一个字符,假定位置为i,匹配判断i+1与i-1位置是否相等,相等ans长度加一,否则停止...image.png               对奇数,ans=1;对偶数,ans初始为0.(不知道奇数偶数,两种都要写,最后取较大值)。...奇数偶数都要判断,代码很长,复杂度O((2*N+1)*N)=O(N^2).               比起一般暴力三方快一点。...对任意位置i,可以扩张的范围是i±p[i],这个范围都是回文的。...如果i+p[j]长度mx之内就取它,如果i+p[j]长度不可控,mx之外,就取mx-i image.png image.png     总之取  p[i]=min(p[2*id-i],mx-i

1.2K20
领券