php中幾個字串替換函數詳解_PHP教程

來源:互聯網
上載者:User
在php中字元替換函數有幾個如有:str_replace、substr_replace、preg_replace、preg_split、str_split等函數,下面我來給大家總結介紹介紹。

一、str_replace(find,replace,string,count)

作用:str_replace() 函數使用一個字串替換字串中的另一些字元。

參數 描述
find 必需。規定要尋找的值。
replace 必需。規定替換 find 中的值的值。
string 必需。規定被搜尋的字串。
count 可選。一個變數,對替換數進行計數。

在本例中,我們將示範帶有數組和 count 變數的 str_replace() 函數:

代碼如下 複製代碼

$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>輸出:

Array
(
[0] => blue
[1] => pink
[2] => green
[3] => yellow
)
Replacements: 1

補充:count如果被指定,它的值將被設定為替換髮生的次數。

二、substr_replace(string,replacement,start,length)

作用:substr_replace() 函數把字串的一部分替換為另一個字串。

參數 描述
string 必需。規定要檢查的字串。
replacement 必需。規定要插入的字串。
start 必需。規定在字串的何處開始替換。

■正數 - 在第 start 個位移量開始替換
■負數 - 在從字串結尾的第 start 個位移量開始替換
■0 - 在字串中的第一個字元處開始替換

charlist 可選。規定要替換多少個字元。

■正數 - 被替換的字串長度
■負數 - 從字串末端開始的被替換字元數
■0 - 插入而非替換

例子

代碼如下 複製代碼

echo substr_replace("Hello world","earth",6);
?>

輸出:

Hello earth


三、preg_replace ( pattern , replacement , subject,limit = -1 ,$count )

作用:執行一個Regex的搜尋和替換

參數 描述
pattern 必需。需要搜尋的模式。
replacement 必需。用於替換的字串或數組。
subject 必需。需要替換的字串或數組。
limit 替換的次數。-1為無限
count 完成替換的次數,變數

Example #1 使用後向引用緊跟數值原文

代碼如下 複製代碼
$string = 'April 15, 2003';
$pattern = '/(w+) (d+), (d+)/i';
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $string);
?>

以上常式會輸出:

April1,2003


Example #2 preg_replace()中使用基於索引的數組

代碼如下 複製代碼
$string = 'The quick brown fox jumped over the lazy dog.';
$patterns = array();
$patterns[0] = '/quick/';
$patterns[1] = '/brown/';
$patterns[2] = '/fox/';
$replacements = array();
$replacements[2] = 'bear';
$replacements[1] = 'black';
$replacements[0] = 'slow';
echo preg_replace($patterns, $replacements, $string);
?>

以上常式會輸出:

The bear black slow jumped over the lazy dog.

四、preg_split ( pattern , subject,limit = -1 ,flag )

作用:通過Regex分割字串

參數 描述
pattern 必需。需要搜尋的模式。
replacement 必需。用於替換的字串或數組。
subject 必需。需要替換的字串。
limit 被分割的字串最多limit。
flag 模式

例 1672. preg_split() 例子:取得搜尋字串的成分

代碼如下 複製代碼

// split the phrase by any number of commas or space characters,
// which include " ", r, t, n and f
$keywords = preg_split ("/[s,]+/", "hypertext language, programming");
?>

例 1673. 將字串分割成字元

代碼如下 複製代碼

$str = 'string';
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($chars);
?>

例 1674. 將字串分割為匹配項及其位移量

代碼如下 複製代碼

$str = 'hypertext language programming';
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>

本例將輸出:

Array
(
[0] => Array
(
[0] => hypertext
[1] => 0
)

[1] => Array
(
[0] => language
[1] => 10
)

[2] => Array
(
[0] => programming
[1] => 19
)

)

五、str_split ( subject,length)

作用:將字串分割成數組

參數 描述
subject 字串。
length 每一段的長度。

例子 1

代碼如下 複製代碼
print_r(str_split("Hello"));
?>

輸出:

Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
)

例子 2

代碼如下 複製代碼
print_r(str_split("Hello",3));
?>

輸出:

Array
(
[0] => Hel
[1] => lo
)


http://www.bkjia.com/PHPjc/445631.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445631.htmlTechArticle在php中字元替換函數有幾個如有:str_replace、substr_replace、preg_replace、preg_split、str_split等函數,下面我來給大家總結介紹介紹。 一、str_repla...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.