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 XML error parsing SOAP payload on line 1
Jun 17 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
Oct 19 PHP
php中常用的预定义变量小结
May 09 PHP
Zend Framework中的简单工厂模式 图文
Jul 10 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
PHP中怎样保持SESSION不过期 原理及方案介绍
Aug 08 PHP
php通过array_push()函数添加多个变量到数组末尾的方法
Mar 18 PHP
PHP中each与list用法分析
Jan 08 PHP
Yii2中关联查询简单用法示例
Aug 10 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
Oct 13 PHP
PHP使用GD库输出汉字的方法【测试可用】
Nov 10 PHP
Yii2框架自定义类统一处理url操作示例
May 25 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
PHP memcache扩展的三种安装方法
2009/04/26 PHP
php 数学运算验证码实现代码
2009/10/11 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
2015/08/18 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
解决在laravel中auth建立时候遇到的问题
2019/10/15 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
2020/03/23 PHP
function foo的原型与prototype属性解惑
2010/11/19 Javascript
javascript检测页面是否缩放的小例子
2013/05/16 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
js获取元素外链样式的方法
2015/01/27 Javascript
JQuery显示隐藏页面元素的方法总结
2015/04/16 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
利用jquery制作滚动到指定位置触发动画
2016/03/26 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
jQuery实现可拖动进度条实例代码
2017/06/21 jQuery
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
JavaScript实现开关等效果
2017/09/08 Javascript
微信小程序之选项卡的实现方法
2017/09/29 Javascript
JS中Attr的用法详解
2017/10/09 Javascript
微信小程序如何获取openid及用户信息
2018/01/26 Javascript
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
[00:10]神之谴戒
2019/03/06 DOTA
Python二维码生成库qrcode安装和使用示例
2014/12/16 Python
Python3.4 splinter(模拟填写表单)使用方法
2018/10/13 Python
python 阶乘累加和的实例
2019/02/01 Python
Python OpenCV 使用滑动条来调整函数参数的方法
2019/07/08 Python
Python可以用来做什么
2020/11/23 Python
matplotlib部件之套索Lasso的使用
2021/02/24 Python
HTML5中原生的右键菜单创建方法
2016/06/28 HTML / CSS
如何手工释放资源
2013/12/15 面试题
大学生旅游业创业计划书
2014/01/29 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
公司办公室岗位职责
2014/03/19 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书
2015年清剿火患专项行动工作总结
2015/07/27 职场文书