php中清除文章中所有空格程式

來源:互聯網
上載者:User

去除所有空白

 代碼如下 複製代碼
function delete($str) {
    $str = trim($str);
    $str = ereg_replace("\t","",$str);
    $str = ereg_replace("\r\n","",$str);
    $str = ereg_replace("\r","",$str);
    $str = ereg_replace("\n","",$str);
    $str = ereg_replace("    ","",$str);
    return trim($str);
}

去除所有注釋用preg_replace()函數把注釋替換成空(是空,不是空格)。
 去掉字串中的空格 str_replace(' ','',$cat_name)

 代碼如下 複製代碼
 
$str = ” This line contains\tliberal \r\n use of   whitespace.\n\n”;
$str = trim($str);// 首先去迴轉尾空格
$str = preg_replace(’/\s(?=\s)/’, ‘’, $str);// 接著去掉兩個空格以上的
$str = preg_replace(’/[\n\r\t]/’, ‘ ‘, $str);// 最後將非空格替換為一個空格

使用上面的例子可以去掉所有多餘的空格。
首先使用TRim()去頭尾空格,
接著用preg_replace()去掉重複的空格。
當中的(?=)表示只匹配後面的空格跟隨前面的空格的空格。
 

 代碼如下 複製代碼

<?php
$str1="   tt 七夕快樂!nr"; //這裡定義一個字元變數,其中包括"空格","t", 水平定位字元,"n",分行符號
//這裡主要調用trim()函數去除空格等,trim()函數用於去除字元中的""空格,"t"水平定位字元"n"分行符號,"r"斷行符號符
//"\0"字串結束符,"xOB"垂直定位字元。如果想通過此函數過濾掉特殊的字元,可以制定第二個參數。
echo trim($str1)."<br>";
//這裡是去除$str1變數中帶有tt的字元
echo trim($str1," tt")."<br>";
//定義變數$str2其中包括"."和空格
$str2="... 情人節快樂!...   中國...";
//調用trim()函數去除$str2變數中的空格
echo trim($str2)."<br>";
//ltrim()函數用於去除字串左邊的空格或指定字串,其預設的字元同trim一樣。因為這裡指定了第二個參數,
//所以只去除$str2變數中左邊的"."
echo ltrim($str2,".")."<br>";
//ltrim()函數用於去除字串(右)邊的空格或指定字串,其預設的字元同trim一樣。因為這裡指定了第二個參數,
//所以只去除$str2變數中左邊的"."
echo rtrim($str2,".")."<br>";
?>

<?php
echo substr("today is father day!",0)."<br>";
echo substr("today is father day!",6,2)."<br>";//這裡只截取字串中第6字元開始截取,並只截取2個字元
echo substr("today is father day!",-5,5)."<br>";//這裡從字串的倒數第5個字元開始截取,截取5個字元
echo substr("today is father day!",0,-5)."<br>";//這裡只截取字串中的首個字元開始截取,截取到字串的倒數第5個
echo substr("today is father day!",-5,-1)."<br>";//這裡從字串的倒數第5個字元開始截取,截取倒數第一個字元
?>

補充一個:php注釋和去除空格

 代碼如下 複製代碼


/**
 * 去除代碼中的空白和注釋
 * @param string $content 代碼內容
 * @return string
 */
function strip_whitespace($content) {
    $stripStr   = '';
    //分析php源碼
    $tokens     = token_get_all($content);
    $last_space = false;
    for ($i = 0, $j = count($tokens); $i < $j; $i++) {
        if (is_string($tokens[$i])) {
            $last_space = false;
            $stripStr  .= $tokens[$i];
        } else {
            switch ($tokens[$i][0]) {
                //過濾各種PHP注釋
                case T_COMMENT:
                case T_DOC_COMMENT:
                    break;
                //過濾空格
                case T_WHITESPACE:
                    if (!$last_space) {
                        $stripStr  .= ' ';
                        $last_space = true;
                    }
                    break;
                case T_START_HEREDOC:
                    $stripStr .= "<<<THINK\n";
                    break;
                case T_END_HEREDOC:
                    $stripStr .= "THINK;\n";
                    for($k = $i+1; $k < $j; $k++) {
                        if(is_string($tokens[$k]) && $tokens[$k] == ';') {
                            $i = $k;
                            break;
                        } else if($tokens[$k][0] == T_CLOSE_TAG) {
                            break;
                        }
                    }
                    break;
                default:
                    $last_space = false;
                    $stripStr  .= $tokens[$i][1];
            }
        }
    }
    return $stripStr;
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.