

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# REPLACE 函数
<a name="REPLACE"></a>

将现有字符串中一组字符的所有匹配项替换为其他指定字符。

REPLACE 与 [TRANSLATE 函数](TRANSLATE.md)和 [REGEXP\$1REPLACE 函数](REGEXP_REPLACE.md)相似，只不过 TRANSLATE 进行多次单字符替换，REGEXP\$1REPLACE 可让您在字符串中搜索正则表达式模式，而 REPLACE 一次性将整个字符串替换为其他字符串。

## 语法
<a name="REPLACE-synopsis"></a>

```
REPLACE(string1, old_chars, new_chars)
```

## 参数
<a name="REPLACE-arguments"></a>

 *string*   
要搜索的 CHAR 或 VARCHAR 字符串 

 *old\$1chars*   
要替换的 CHAR 或 VARCHAR 字符串。

 *new\$1chars*   
用于替换 *old\$1string* 的新 CHAR 或 VARCHAR 字符串。

## 返回类型
<a name="REPLACE-return-type"></a>

VARCHAR

如果 *old\$1chars* 或 *new\$1chars* 为 NULL，则将返回 NULL。

## 示例
<a name="REPLACE-examples"></a>

以下示例将 CATGROUP 字段中的字符串 `Shows` 转换为 `Theatre`：

```
select catid, catgroup,
replace(catgroup, 'Shows', 'Theatre')
from category
order by 1,2,3;

 catid | catgroup | replace
-------+----------+----------
     1 | Sports   | Sports
     2 | Sports   | Sports
     3 | Sports   | Sports
     4 | Sports   | Sports
     5 | Sports   | Sports
     6 | Shows    | Theatre
     7 | Shows    | Theatre
     8 | Shows    | Theatre
     9 | Concerts | Concerts
    10 | Concerts | Concerts
    11 | Concerts | Concerts
(11 rows)
```