• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    PHP如何利用正則替換非法字符?

    在php開發中,遇到一個字符串帶有一個特殊符號的空格,用trim方法清理不掉這個空格。怎么辦?我們可以利用正則表達式來替換這些非法字符,下面來看下。

    操作方式

    • 01

      起首我們界說一個字符串,字符串的前面字符是一個正常的空格,字符串的后面字符是一個包羅特別字符的空格。
      然后用trim方式將字符串的前后空格去失落。再加上一些輸出代碼,如圖

    • 02

      運行這個php頁面,從頁面成果上可以看到原字符顛末trim方式后,當作功把字符前的正常空格去失落了,但字符后面的特別空格并沒有去除失落。

    • 03

      那么如何才能把這些特別字符去失落?
      可以利用正則表達式。起首我們界說一個正則表達式:
      reg = '/[^0-9a-z]/'

    • 04

      這個正則是什么意思?中括號里的字符是能匹配出來的字符,即0到9的數字和a到z的字母數字是都可以匹配出來的,但若是加上了^符號,就是相反的意思。便是除了0-9數字和a-z的字母外的所有字符能匹配查找出來。

    • 05

      然后挪用php內置的preg_replace方式把所有其他的字符替代失落,該方式就是傳入正則表達式,然后把正則表達匹配出來的字符(上面的是所有非數字和字母的字符)替代當作‘’(即空字符串),也就是刪除了非數字和字母的字符。

    • 06

      再次運行頁面,可以看到此刻字符的前后空格都沒有了,都被去除了。

    • 07

      preg_replace還有別的一個主要的參數,第四個參數,limit,這是做什么用的?當你在替代字符串時,有時并不需要替代所有的不需要的字符,只需要替代前面的某幾個,好比2個,或3個,我們就需要利用這個參數了,傳入2或3。這個參數默認是-1,即全數替代。

    • End
    • 發表于 2018-01-19 00:00
    • 閱讀 ( 902 )
    • 分類:電腦網絡

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆