PHP 正则 空字符 / NUL字符

\xnn 匹配中ASCII代码十六进制代码为nn的字符。
[\x00-\x7F] 匹配ASCII值从0-127的字符。
0-127表示单字节字符,也就是:数字,英文字符,半角符号,以及某些控制字符。

 

正则示例:

复制代码
<?php

$test_str = 'a'.chr(0).'bcdefj'.chr(0).'h';

//ASCII码中十进制 0 对应 十六进制 00
$hex_str = '\x00';

$pattern =  sprintf('/a%s[0-9a-zA-Z]{6}%sh/',$hex_str,$hex_str);

preg_match_all($pattern,$test_str,$output); 
var_dump($output);


$test_str = 'a'.chr(31).'bcdefj'.chr(31).'h';

//ASCII码中十进制 31 对应 十六进制 1F
$hex_str = '\x1F';

$pattern =  sprintf('/a%s[0-9a-zA-Z]{6}%sh/',$hex_str,$hex_str);

preg_match_all($pattern,$test_str,$output); 
var_dump($output);
复制代码

 

posted @ 2018-10-12 11:46  phpdragon  阅读(1718)  评论(0)    收藏  举报
编辑推荐:
· AES 加密模式演进:从 ECB、CBC 到 GCM 的 C# 深度实践
· InnoDB为什么不用跳表,Redis为什么不用B+树?
· 记一次 C# 平台调用中因非托管 union 类型导致的内存访问越界
· [EF Core]聊聊“复合”属性
· 那些被推迟的 C# 14 特性及其背后的故事
阅读排行:
· 博客园出海记-开篇:扬帆启航
· 微软开源的 MCP 教程「GitHub 热点速览」
· 记一次 .NET 某汽车控制焊接软件 卡死分析
· 关于布尔类型的变量不要加 is 前缀,被网友们吐槽了,特来完善下
· C#中的多级缓存架构设计与实现深度解析
点击右上角即可分享
微信分享提示