Postgresql regexp_匹配更好的方法来消除返回的花括号

Postgresql regexp_匹配更好的方法来消除返回的花括号,postgresql,Postgresql,是否有比以下更好的方法来修剪regexp_匹配结果中的{”“}: trim(trailing '"}' from trim(leading '{"' from regexp_matches(note, '[0-9a-z \r\n]+', 'i')::text)) regexp\u matches()返回所有匹配项的数组。数组的字符串表示形式包含大括号,这就是为什么要使用大括号 如果您只需要所有匹配项的列表,可以使用array\u to\u string()将结果转换为“简单”文本数据类型: a

是否有比以下更好的方法来修剪regexp_匹配结果中的
{”“}

trim(trailing '"}' from trim(leading '{"' from regexp_matches(note, '[0-9a-z \r\n]+', 'i')::text))
regexp\u matches()
返回所有匹配项的数组。数组的字符串表示形式包含大括号,这就是为什么要使用大括号

如果您只需要所有匹配项的列表,可以使用
array\u to\u string()
将结果转换为“简单”文本数据类型:

array_to_string(regexp_matches(note, '[0-9a-z \r\n]+', 'i'), ';')
如果您只对第一个匹配感兴趣,则可以选择数组的第一个元素:

(regexp_matches(note, '[0-9a-z \r\n]+', 'i'))[1]

regexp\u matches
返回所有匹配项的数组。数组的字符串表示形式包含大括号。问题是您想对每个数组元素做什么?如何使用
regexp\u match()
函数的结果?我想清除文本字段中的垃圾字符,所以我需要
array\u to\u string
。谢谢澄清!