regexp_replace() 使用方法及实例
时间: 2023-06-12 09:04:57 浏览: 67
regexp_replace() 是 PostgreSQL 中的一个字符串函数,用于替换匹配某个正则表达式的字符串。
函数语法如下:
```sql
regexp_replace(string text, pattern text, replacement text [, flags text])
```
其中,参数解释如下:
- string:要匹配的字符串;
- pattern:用于匹配的正则表达式;
- replacement:用于替换匹配到的字符串;
- flags:可选参数,用于指定正则表达式的匹配模式,如 "g" 表示全局匹配,"i" 表示忽略大小写等。
以下是一些使用 regexp_replace() 函数的实例:
1. 将字符串中的所有空格替换为下划线:
```sql
SELECT regexp_replace('hello world', ' ', '_', 'g');
-- 返回:'hello_world'
```
2. 将字符串中的所有数字替换为空字符串:
```sql
SELECT regexp_replace('123abc456def789', '\d', '', 'g');
-- 返回:'abcdef'
```
3. 将字符串中的所有小写字母替换为大写字母:
```sql
SELECT regexp_replace('hello world', '[a-z]', E'\\u\\0', 'g');
-- 返回:'HELLO WORLD'
```
在第三个实例中,使用了 E'\\u\\0' 表示要替换成大写字母,其中 \0 表示匹配到的字符。