PHP中用正则表达式清除字符串的空白


Posted in PHP onJanuary 17, 2011

如果您想要去掉字符串开始和结束的空白可以使用PHP内部函数trim() 。但是, 我们经常想完全清除空白。需要把开始和结束的空白清除掉,将多个空白变为一个空白,使用一个规则来处理同样的类型的其它空白。

完成这些可以使用PHP的正则表达式来完成

下例可以去除额外Whitespace

<?php 
$str = " This line contains\tliberal \r\n use of whitespace.\n\n"; // First remove the leading/trailing whitespace 
//去掉开始和结束的空白 
$str = trim($str); 
// Now remove any doubled-up whitespace 
//去掉跟随别的挤在一块的空白 
$str = preg_replace('/\s(?=\s)/', '', $str); 
// Finally, replace any non-space whitespace, with a space 
//最后,去掉非space 的空白,用一个空格代替 
$str = preg_replace('/[\n\r\t]/', ' ', $str); 
// Echo out: 'This line contains liberal use of whitespace.' 
echo "<pre>{$str}</pre>"; 
?>

上例一步一步的去掉所有的空白。首先我们使用trim()函数来去掉开始和结束的空白。然后,我们使用preg_replace() 去除重复的。\s代表任何whitespace 。(?=) 表示向前查找 。它味着只匹配后面有和它本身相同字符的字符。所以这个正则表达式的意思是: "被whitespace 字符跟随的任何whitespace 字符。" 我们用空白来替换掉,这样也就去除了,留下的将是唯一的whitespace 字符。

最后, 我们使用另一个正则表达式[\n\r\t]来查找任何残余的换行符(\n), 回车(\r), 或制表符(\t) 。我们用一个空格来替换这些。

PHP 相关文章推荐
php下用cookie统计用户访问网页次数的代码
May 09 PHP
php对mongodb的扩展(初出茅庐)
Nov 11 PHP
php的ajax简单实例
Feb 27 PHP
PHP简单生成缩略图相册的方法
Jul 29 PHP
ThinkPHP中Common/common.php文件常用函数功能分析
May 20 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
Aug 07 PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 PHP
搜索附近的人PHP实现代码
Feb 11 PHP
PHP操作Redis常用技巧总结
Apr 24 PHP
thinkphp3.2框架中where条件查询用法总结
Aug 13 PHP
laravel框架创建授权策略实例分析
Nov 22 PHP
PHP中用Trait封装单例模式的实现
Dec 18 PHP
php开发环境配置记录
Jan 14 #PHP
PHP文件读写操作之文件写入代码
Jan 13 #PHP
PHP文件读写操作之文件读取方法详解
Jan 13 #PHP
PHP目录函数实现创建、读取目录教程实例
Jan 13 #PHP
PHP开发规范手册之PHP代码规范详解
Jan 13 #PHP
PHP JSON格式数据交互实例代码详解
Jan 13 #PHP
PHP学习笔记之二 php入门知识
Jan 12 #PHP
You might like
支持oicq头像的留言簿(一)
2006/10/09 PHP
php环境下利用session防止页面重复刷新的具体实现
2014/01/09 PHP
PHP采用curl模仿用户登陆新浪微博发微博的方法
2014/11/07 PHP
php常用数学函数汇总
2014/11/21 PHP
php查询mssql出现乱码的解决方法
2014/12/29 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
php中define用法实例
2015/07/30 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
JavaScript的原型继承详解
2015/02/15 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
js实现网页图片延时加载 提升网页打开速度
2016/01/26 Javascript
JS、jQuery中select的用法详解
2016/04/21 Javascript
关于动态执行代码(js的Eval)实例详解
2016/08/15 Javascript
阿里云ecs服务器中安装部署node.js的步骤
2016/10/08 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
2016/12/08 Javascript
js实现tab切换效果
2017/02/16 Javascript
JS实现获取毫秒值及转换成年月日时分秒的方法
2018/08/15 Javascript
详解Vue 全局变量,局部变量
2019/04/17 Javascript
如何在Vue中使localStorage具有响应式(思想实验)
2020/07/14 Javascript
js实现简单图片拖拽效果
2021/02/22 Javascript
[01:11]steam端dota2实名认证操作流程视频
2021/03/11 DOTA
Python获取文件ssdeep值的方法
2014/10/05 Python
用Python写飞机大战游戏之pygame入门(4):获取鼠标的位置及运动
2015/11/05 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
2018/08/02 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
python实现学员管理系统
2019/02/26 Python
python 数据提取及拆分的实现代码
2019/08/26 Python
美国娱乐和流行文化商品店:FYE
2017/09/14 全球购物
PHP面试题及答案二
2015/05/23 面试题
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
竞选学习委员演讲稿
2014/04/28 职场文书
2014年音乐教师工作总结
2014/12/03 职场文书
会计做账心得体会
2016/01/22 职场文书
Python实现生成bmp图像的方法
2021/06/13 Python
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android