在 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 将字符串拆分为新行的主要内容,如果未能解决你的问题,请参考以下文章