正则表达式

在这里插入图片描述

\ 这是引用符,用来将这里列出的这些元字符当作普通的字符来进行匹配

[[:punct:]]代表任意一个字符,包括各种符号

“?:”非获取匹配,匹配冒号后的内容但不获取匹配结果,不进行存储供以后使用。

单独的“?”:匹配前面的子表达式零次或一次。

“@”在写文件路径时的作用是忽略转义字符
正则表达式中,为了防止编译器将某些字符作为C#语言来识别,截断该字符串的情况,在该字符串前加一个"@"就是告诉编译器,这些特殊字符是作为字符串中的一部分存在的,编译器就不会去编译它了. 比如路径前加一个@,路径中的/就不会被编译了


正则表达式的[]和()

1.(?:abc)表示找到这样abc这样一组,但不记录,不保存到 $变量中,否则可以通过 $x取第几个括号所匹配到的项,比如:(aaa)(bbb)(ccc)(?:ddd)(eee),可以用$1获取(aaa)匹配到的内容,而$3则获取到了(ccc)匹配到的内容,而$4则获取的是由(eee)匹配到的内容,因为前一对括号没有保存变量
2.a(?=bbb) 顺序环视 表示a后面必须紧跟3个连续的b
3.(?i:xxxx) 不区分大小写
4.(?s:.*) 跨行匹配.可以匹配回车符
圆括号可以匹配多个连续的字符,而一对方括号只能匹配单个字符
5.(ab){1,3},就表示ab一起连续出现最少1次,最多3次。
6.[(a)],会匹配 ( 和 a 和 ) 和这三个字符。


(a.)*表示匹配字母a和任意字符的组合若干次,而a.*表示匹配一个字母a和若干个任意字符。

更多正则匹配


bugku中的一道字符?正则?

trim()函数:移除字符串两侧的字符
trim(string,charlist)
比如echo trim($str,“Hed!”); #输出的就是str字符串中除去Hed!的部分
trim的意思是修建

preg_match() 函数:用于进行正则表达式匹配,成功返回 1 ,否则返回 0 。
preg_match() 第一次匹配成功后就会停止匹配,如果要实现全部结果的匹配,即搜索到subject结尾处,则需使用 preg_match_all() 函数。

die()函数:停止程序运行,输出内容
die(),exit(),return的区别
exit(0):正常退出
exit(1):非正常退出
return是关键字,exit()和die()是函数

来个符合正则的就可以得到flag了
?id=key22key3333key:/3/3keya:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值