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中cookies使用指南
Mar 16 PHP
PHP 文件上传源码分析(RFC1867)
Oct 30 PHP
session在PHP大型web应用中的使用
Jun 25 PHP
PHP使用PHPMailer发送邮件的简单使用方法
Nov 12 PHP
PHPer 需要了解的 5 个 Composer 小技巧
Aug 18 PHP
php文件操作相关类实例
Jun 18 PHP
PHP变量赋值、代入给JavaScript中的变量
Jun 29 PHP
PHP+AJAX实现投票功能的方法
Sep 28 PHP
PHP编程获取音频文件时长的方法【基于getid3类】
Apr 20 PHP
PHP实现找出有序数组中绝对值最小的数算法分析
Aug 07 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
Oct 07 PHP
php+Ajax无刷新验证用户名操作实例详解
Mar 04 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中实现Javascript的escape()函数代码
2010/08/08 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
php简单防盗链实现方法
2015/07/29 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
js CSS操作方法集合
2008/10/31 Javascript
JavaScript面向对象之体会[总结]
2008/11/13 Javascript
jqeury eval将字符串转换json的方法
2011/01/20 Javascript
jQuery验证Checkbox是否选中的代码 推荐
2011/09/04 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
2012/08/09 Javascript
web的各种前端打印方法之jquery打印插件jqprint实现网页打印
2013/01/09 Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
2013/04/22 Javascript
影响jQuery使用的14个方面
2014/09/01 Javascript
JS+CSS实现的日本门户网站经典选项卡导航效果
2015/09/27 Javascript
用JS写的一个Ajax库(实例代码)
2016/08/06 Javascript
浅谈JavaScript 函数参数传递到底是值传递还是引用传递
2016/08/23 Javascript
H5基于iScroll实现下拉刷新和上拉加载更多
2017/07/18 Javascript
微信小程序 转发功能的实现
2017/08/04 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
2017/09/19 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
JS数组方法push()、pop()用法实例分析
2020/01/18 Javascript
解决vue-photo-preview 异步图片放大失效的问题
2020/07/29 Javascript
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
Python实现自动发送邮件功能
2021/03/02 Python
PyQt编程之如何在屏幕中央显示窗体的实例
2019/06/18 Python
python重要函数eval多种用法解析
2020/01/14 Python
python圣诞树编写实例详解
2020/02/13 Python
Python如何在DataFrame增加数值
2020/02/14 Python
英国女性时尚品牌:Apricot
2018/12/04 全球购物
绿化工程实施方案
2014/03/17 职场文书
尊老爱亲美德少年事迹材料
2014/08/14 职场文书
领导走群众路线整改措施思想汇报
2014/10/12 职场文书
2014教师专业技术工作总结
2014/12/03 职场文书
2015元旦文艺汇演主持稿(开场白+结束语)
2014/12/14 职场文书
python实现A*寻路算法
2021/06/13 Python
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技
Java中Dijkstra(迪杰斯特拉)算法
2022/05/20 Java/Android