从基础的ascii码找出正则表达式元字符的具体意义。
1 <?php 2 //从最基础的编码ascii码表的128个字符 了解正则 \w \s \b \d 所对应的所有匹配 3 $reg_w='/\w/'; 4 $reg_s='/\s/'; 5 $reg_b='/\b/'; 6 $reg_d='/\d/'; 7 $str_w='';$str_s='';$str_b='';$str_d=''; 8 echo '所有ascii码表的字符:'; 9 for($i=0;$i<=127;$i++){ 10 echo chr($i); 11 if(preg_match($reg_w,chr($i))){ $str_w.=chr($i); } 12 if(preg_match($reg_s,chr($i))){ $str_s.='('.$i.')'.chr($i); } 13 if(preg_match($reg_b,chr($i))){ $str_b.=chr($i); } 14 if(preg_match($reg_d,chr($i))){ $str_d.=chr($i); } 15 16 } 17 echo '<br/>'; 18 echo '\w 匹配的字符:'.$str_w.'<br/>'; 19 echo '\s 匹配的字符:'.$str_s.' 注意: 空白符号一共有6个:水平制表符(9) 换行键(10) 垂直制表符(11) 换页键(12) 回车键(13) 空格(32) <br/>'; 20 echo '\b 匹配的字符:'.$str_b.'<br/>'; 21 echo '\d 匹配的字符:'.$str_d.'<br/>'; 22 ?>
运行结果如下
所有ascii码表的字符: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
\w 匹配的字符:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz
\s 匹配的字符:(9) (10) (11)(12)(13) (32) 注意: 空白符号一共有6个:水平制表符(9) 换行键(10) 垂直制表符(11) 换页键(12) 回车键(13) 空格(32)
\b 匹配的字符:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz
\d 匹配的字符:0123456789
发现\w 和\b存在相同之处
标签:编码,匹配,字符,正则表达式,echo,str,角度看,制表符,10 From: https://www.cnblogs.com/smxjue/p/17991518