字符串处理,清除字符串空格与连续空格

 代码如下

我们常常会管理来自客商输入或从数据库中读取的数额,大概在您的字符串中有多余的空域或制表符,回车等。存储这一个额外的字符是有一点浪费空间的。

<?
$str = " This line containstliberal rn use of whitespace.nn";

假诺你想要去掉字符串开首和得了的空域能够选取PHP内部函数trim() 。然则, 大家平时想全盘撤销空白。供给把初叶和了结的空白清除掉,将多个空白变为四个空荡荡,使用二个法规来拍卖一样的类其他另外层空间白。

//去掉开头和了结的空白
$str = trim($str);

成功这一个能够采纳PHP的正则表明式来造成

//去掉跟随别的挤在一块的空白
$str = preg_replace('/s(?=s)/', '', $str);

下例可以去除额外Whitespace

//最终,去掉非space 的空域,用三个空格替代
$str = preg_replace('/[nrt]/', ' ', $str);

<?php

echo "<pre>{$str}</pre>";

$str = " This line containstliberal rn use of whitespace.nn";

?>

// First remove the leading/trailing whitespace

上例一步一步的排除具有的空域。首先大家使用trim()函数来去掉伊始和终止的空域。然后,大家利用preg_replace() 去除重复的。s代表任何whitespace 。(?=) 表示向前查找 。它味着只非常后边有和它本人同样字符的字符。所以这些正则表明式的意味是: "被whitespace 字符跟随的任何whitespace 字符。" 我们用空白来替换掉,那样也就去除了,留下的将是无与伦比的whitespace 字符。

//去掉开头和得了的空域

末尾, 大家利用另三个正则表明式[nrt]来查找任何残余的换行符(n), 回车(r), 或制表符(t) 。大家用多个空格来替换这么些。

$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('/[nrt]/', ' ', $str);

// Echo out: 'This line contains liberal use of whitespace.'

echo "<pre>{$str}</pre>";

?>

上例一步一步的排除具备的空白。首先我们使用trim()函数来去掉开首和终止的空白。然后,大家利用preg_replace() 去除重复的。s代表任何whitespace 。(?=) 表示向前查找 。它味着只非常前边有和它自己同样字符的字符。所以那一个正则表明式的情致是: "被whitespace 字符跟随的其余whitespace 字符。" 我们用空白来替换掉,这样也就去除了,留下的将是独一的whitespace 字符。

最后, 大家应用另贰个正则表达式[nrt]来搜寻任何残余的换行符(n), 回车(r), 或制表符(t) 。我们用三个空格来替换这么些。

本文由365bet体育在线官网发布于365bet,转载请注明出处:字符串处理,清除字符串空格与连续空格

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。