PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

PHP快速实现删除空、制表符、换行符等特殊字符(两种方法)

藏色散人
藏色散人 原创
2021-08-19 09:48:07 3361浏览

上一篇文章《php数学函数实践四:将浮点数从零舍入到指定的小数位数》给大家介绍了怎么浮点数从零舍入到指定的小数位数,感兴趣的朋友可以了解学习一下~

那么本文将给大家介绍解决一个在平时开发过程中非常常见的一个问题,就是如何从字符串中删除特殊字符!

在本文涉及到的特殊字符包括:空(“\0”)、水平制表符(“\t”)    、换行符(“\n”)    、垂直制表符(“\v” )   和ESC(“\e”)。

下面我们将使用两种不同的方法从 PHP 字符串中删除特殊字符:

第一种方法:

使用通用正则表达式:有许多正则表达式可用于删除所有 ASCII 值低于 32 的字符。这里,我们将使用preg_replace()方法。

注: ereg_replace() 方法已从 PHP >= 7 中删除,因此这里我们将使用 preg_replace() 方法。

php代码如下:

<?php
$str = "\eI\t\tLOVE\v\vPHP\n";
//使用preg_replace方法删除所有特殊字符串
$str = preg_replace(&#39;/[\x00-\x1F\x7F]/&#39;, &#39;&#39;, $str);

// 显示修改字符串
echo($str);

输出结果:

ILOVEPHP

第二种方法:

使用“cntrl”正则表达式:这也可用于删除所有特殊字符。而[:cntrl:]代表所有特殊字符。

PHP代码如下:

<?php
$str = "\eI\t\tLOVE\vPHP\n";
//使用preg_replace方法删除所有特殊字符串
$str = preg_replace(&#39;/[[:cntrl:]]/&#39;, &#39;&#39;, $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视频教程》!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。