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 相关文章推荐
windows下PHP APACHE MYSQ完整配置
Jan 02 PHP
PHP 输出缓存详解
Jun 20 PHP
基于PHP选项与信息函数的使用详解
May 10 PHP
使用session判断用户登录用户权限(超简单)
Jun 08 PHP
typecho插件编写教程(三):保存配置
May 28 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
Apr 27 PHP
不常用但很实用的PHP预定义变量分析
Jun 25 PHP
laravel 数据验证规则详解
Oct 23 PHP
Thinkphp 框架扩展之行为扩展原理与实现方法分析
Apr 23 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
Apr 27 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
基于mysql的bbs设计(一)
2006/10/09 PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
2010/04/12 PHP
php图片水印添加、压缩、剪切的封装类实现
2020/04/18 PHP
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
js左侧三级菜单导航实例代码
2013/09/13 Javascript
巧用js提交表单轻松解决一个页面有多个提交按钮
2013/11/17 Javascript
javascript 处理null及null值示例
2014/06/09 Javascript
javascript中Array数组的迭代方法实例分析
2015/02/04 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
2016/07/15 Javascript
JS中常用的正则表达式
2016/09/29 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
jQuery验证表单格式的使用方法
2017/01/10 Javascript
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
2018/10/12 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
使用JQuery自动完成插件Auto Complete详解
2019/06/18 jQuery
vue实现多级菜单效果
2019/10/19 Javascript
react-router-dom 嵌套路由的实现
2020/05/02 Javascript
JavaScript, select标签元素左右移动功能实现
2020/05/14 Javascript
Python中的yield浅析
2014/06/16 Python
Python实现获取网站PR及百度权重
2015/01/21 Python
windows上安装python3教程以及环境变量配置详解
2019/07/18 Python
Pycharm最新激活码2019(推荐)
2019/12/31 Python
django ajax发送post请求的两种方法
2020/01/05 Python
python 安装impala包步骤
2020/03/28 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
python excel多行合并的方法
2020/12/09 Python
CSS3 Flexbox中flex-shrink属性的用法示例介绍
2013/12/30 HTML / CSS
CSS3实现3D翻书效果
2016/06/20 HTML / CSS
美国优质宠物用品购买网站:Muttropolis
2020/02/17 全球购物
考试没考好检讨书
2014/01/31 职场文书
取保候审保证书
2014/04/30 职场文书
大学新生军训自我鉴定范文
2014/09/13 职场文书
私营公司诉讼代理委托书范本
2014/09/13 职场文书
2014年资料员工作总结
2014/11/18 职场文书