PHP快速实现删除空、制表符、换行符等特殊字符(两种方法)
上一篇文章《PHP数学函数实践四:将浮点数从零舍入到指定的小数位数》给大家介绍了怎么浮点数从零舍入到指定的小数位数,感兴趣的朋友可以了解学习一下~
那么本文将给大家介绍解决一个在平时开发过程中非常常见的一个问题,就是如何从字符串中删除特殊字符!
在本文涉及到的特殊字符包括:空(“”)、水平制表符(“
”) 、换行符(“
”) 、垂直制表符(“
v
” ) 和ESC(“e
”)。
下面我们将使用两种不同的方法从 PHP 字符串中删除特殊字符:
第一种方法:
使用通用正则表达式:有许多正则表达式可用于删除所有 ASCII 值低于 32 的字符。这里,我们将使用preg_replace()方法。
注: ereg_replace() 方法已从 PHP >= 7 中删除,因此这里我们将使用 preg_replace() 方法。
php代码如下:
<?php $str = "eI LOVEvvPHP "; //使用preg_replace方法删除所有特殊字符串 $str = preg_replace('/[x00-x1Fx7F]/', '', $str); // 显示修改字符串 echo($str);
输出结果:
ILOVEPHP
第二种方法:
使用“cntrl”正则表达式:这也可用于删除所有特殊字符。而[:cntrl:]代表所有特殊字符。
PHP代码如下:
<?php $str = "eI LOVEvPHP "; //使用preg_replace方法删除所有特殊字符串 $str = preg_replace('/[[:cntrl:]]/', '', $str); // 显示修改字符串 echo($str);
输出结果:
ILOVEPHP
注:
preg_replace
函数用于执行一个正则表达式的搜索和替换。
其语法:mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
说明:搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。
PHP中文网平台有非常多的视频教学资源,欢迎大家学习《PHP视频教程》!