在 Postgres 中使用 Pattern 将字符串拆分为新行

Posted

技术标签:

【中文标题】在 Postgres 中使用 Pattern 将字符串拆分为新行【英文标题】:Split String using Pattern into new line in Postgress 【发布时间】:2020-04-14 12:42:06 【问题描述】:

我正在使用以下查询来获取如下输出。我想制作函数,以便我将传递该字符串并获得预期输出的输出。 括号中的每个数据都需要在每一行中显示。

字符串:- $..Properties[*]-$..Layer_Index+$..Name==Value()/$..Properties(Name==True)

预期输出:-

【问题讨论】:

与您的问题无关,但是:Postgres 9.2 是no longer supported,您应该尽快计划升级。 【参考方案1】:

您可以为此使用regexp_matches()

select (regexp_matches(input, '\(\$[^\]+)\', 'g'))[1]

input 是您要解析的字符串。

regexp_matches() 将每行的多个匹配项作为数组返回。 (..)[1] 然后选择该数组的第一个元素。

我认为这也应该适用于 Postgres 9.2。

Online example

【讨论】:

以上是关于在 Postgres 中使用 Pattern 将字符串拆分为新行的主要内容,如果未能解决你的问题,请参考以下文章

php图片加字将字旋转位置

将字串内容输出到文件

如何将字串 String 转换成整数 int

将字节流转换为字节数组,无需额外空间

c++ 输入一字串后.将字串里大写英文字转成小写、小写英文字转成大写

使用 node-postgres 在 postgres 中存储文件