【发布时间】:2021-04-23 10:31:20
【问题描述】:
我是正则表达式的新手,所以我在替换字符串中的数字时感到困惑,其中几个 id 数字(从 1 到 5 位,到目前为止)用逗号分隔并用大括号括起来。 我需要在每个书面数字之前放置一个固定代码,如 p1_ 以便在将来区分不同类型的对象的 id。 我有一个带有文本格式的“维护”列的 postgres 数据库,其中可以包含如下值(单元格不能为空或为空):
+---------------+
| maintainance |
+---------------+
| {12541,2,4} |
+---------------+
| {12,131,9999} |
+---------------+
| {54} |
+---------------+
| {1} |
+---------------+
| {12500,65} |
+---------------+
我需要像这样替换每个数字“p1_”之前的值:
+------------------------+
| maintainance |
+------------------------+
| {p1_12541,p1_2,p1_4} |
+------------------------+
| {p1_12,p1_131,p1_9999} |
+------------------------+
| {p1_54} |
+------------------------+
| {p1_1} |
+------------------------+
| {p1_12500,p1_65} |
+------------------------+
您能建议我如何使用正则表达式编写替换命令吗? 提前致谢
【问题讨论】:
-
该列是什么数据类型?显示似乎表明这些是数组。
标签: postgresql replace regexp-replace