當前位置: 首頁> 最新文章列表> PHP字符串替換方法詳解:str_replace、preg_replace和strtr使用指南

PHP字符串替換方法詳解:str_replace、preg_replace和strtr使用指南

gitbox 2025-08-04

PHP字符串替換

str_replace函數

在PHP中,字符串替換最常用的方法是內置的str_replace函數。它的基本語法如下:

 str_replace($search, $replace, $subject);

其中,$search是需要查找並替換的字符串,$replace是替換後的內容,$subject是被查找和替換的目標字符串。

舉個簡單例子:

 $text = "Hello World";
$newText = str_replace("World", "PHP", $text);
echo $newText; // 輸出:Hello PHP

如上所示,str_replace會將文本中的“World”替換成“PHP”。

使用正則表達式進行替換

除了str_replace,PHP還提供了preg_replace函數用於更複雜的字符串替換,支持正則表達式匹配。

preg_replace的基本語法為:

 preg_replace($pattern, $replacement, $subject);

其中,$pattern是正則表達式模式,$replacement是替換內容,$subject是目標字符串。

示例:

 $text = "My email is [email protected]";
$newText = preg_replace("/(\w+)@(\w+)\.com/", "$2@$1.com", $text);
echo $newText; // 輸出:My email is example.com@example

該例中,將email地址中的用戶名和域名順序進行了調換。

strtr函數

除了以上兩種方法,PHP還有strtr函數,支持多對一替換,適合批量替換特定字符串。

它的語法如下:

 strtr($string, $replacePairs);

其中,$string是目標字符串,$replacePairs是一個關聯數組,key為被替換字符串,value為替換成的字符串。

示例:

 $text = "Hello World";
$newText = strtr($text, array("Hello" => "Hi", "World" => "PHP"));
echo $newText; // 輸出:Hi PHP

此例中,“Hello”被替換為“Hi”,“World”被替換為“PHP”。

總結

本文介紹了PHP中三種常用的字符串替換方法:str_replace、preg_replace和strtr。根據不同需求,可以選擇簡單替換、複雜正則匹配替換或批量替換,靈活應用這些函數能有效提升PHP字符串處理的效率。