本篇文章的次要内容是讲PHP之PCRE正则解析,具备肯定的参考代价,感兴味的冤家能够理解一下,心愿能协助到你。
1、媒介
后面的博客里,有对字符集的解析。这里就没有是字符集的事儿了,正在PHP中不少函数的解决默许是unicode中的UTF-8编码格局。那末空话没有多说,间接开端正题。
2、PHP函数mb_split解析
1 <?php 2 $preg_strings = '测、试、1、下'; 3 $preg_str = mb_split('、', $preg_strings); 4 print_r($preg_str);
打印后果:
Array( [0] => 测 [1] => 试 [2] => 一 [3] => 下)
此函数默许底层解析,以UTF-8的编码格局解析。以分隔符(、)的UNICODE的16进制码点宰割字符$preg_strings。
3、PHP函数preg_split解析
宰割字符串“测试一下”
1 <?php 2 $strings = '测试一下'; 3 $mb_arr = preg_split('//u', $strings, -1, PREG_SPLIT_NO_EMPTY); 4 print_r($mb_arr);
打印后果以下:
Array( [0] => 测 [1] => 试 [2] => 一 [3] => 下 )
4、PCRE中的/u解析
正在PHP中,正则的定界符能够为#、%、/等等。
正在一个正则中有时前面会有些润饰符。那末他们都是甚么意义呢?
比方:
%[\x{4e00}-\x{9fa5}]+%u
此中前面的润饰符u代码表以正则婚配以utf-8的编码格局婚配。
例子一:
1 <?php 2 $strings = '测试一下'; 3 $is_true = preg_match_all('%[\x{4e00}-\x{9fa5}]+%u', $strings, $match); 4 var_dump($is_true);
打印后果以下:
Array( [0] => Array ( [0] => 测试一下 ) )
这里的[\x{4e00}-\x{9fa5}]是甚么意义呢?
正在PHP正则中\x用来示意16进制。
中文的UNICODE码点正在4E00 - 9FFF (这里说的都是16进制)
以是,正则婚配写法就是区间[],[\x{4E00}-\x{9FFF}]
这两个正则的成果都是同样的。
相干教程:PHP视频教程
以上就是PHP之PCRE正则解析的具体内容,更多请存眷资源魔其它相干文章!
标签: php php开发教程 php开发资料 php开发自学 正则解析
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!