SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » PostgreSQL » Найти подстроку
Найти подстроку [сообщение #4279] Mon, 29 January 2024 22:26 Переход к следующему сообщению
l-lisa в настоящее время не в онлайне  l-lisa
Сообщений: 4
Зарегистрирован: July 2022
Junior Member
Здравствуйте, никак не могу с помощью регулярных выражений вычленить значение находящееся после 'key': и перед запятой или , 'self':
Вот пример строки {'id': '2132078', 'key': 'VIATRISGL-37374', 'self': 'https://} нужно вернуть VIATRISGL-37374
Одна из моих попыток
REGEXP_EXTRACT(je."financial epic key",'key'': ''[^'']*, ([^,]*)')
помогите пожалуйста

[Обновления: Mon, 29 January 2024 22:27]

Известить модератора

icon10.gif  Re: Найти подстроку [сообщение #4314 является ответом на сообщение #4279] Wed, 31 January 2024 22:43 Переход к предыдущему сообщениюПереход к следующему сообщению
rozhnev в настоящее время не в онлайне  rozhnev
Сообщений: 2
Зарегистрирован: January 2024
Junior Member
Похоже на неправильно отформатированный JSON. Попробуйте так: https://sqlize.online/s/Af

select replace(
   '{''id'': ''2132078'', ''key'': ''VIATRISGL-37374'', ''self'': ''https://''}',
    '''', '"')::json->>'key'
Re: Найти подстроку [сообщение #5321 является ответом на сообщение #4279] Thu, 08 August 2024 13:55 Переход к предыдущему сообщению
iLinkses в настоящее время не в онлайне  iLinkses
Сообщений: 5
Зарегистрирован: August 2024
Junior Member
l-lisa писал(а) Mon, 29 January 2024 22:26
'https://}
Предыдущий комментатор прав, это косячный жсон. Единственное, вот в этом месте, не хватает закрывающей кавычки, оно всегда так будет? Если там всё-таки будет кавычка, то все становится проще.
SELECT * FROM json_to_record(REPLACE('{''id'': ''2132078'', ''key'': ''VIATRISGL-37374'', ''self'': ''https://''}','''','"')::JSON) AS x(id INT,key TEXT,self TEXT)
Предыдущая тема: Сделать 2 поля уникальными, для определённого значения одного из них.
Следующая тема: подзапрос в условном выражении
Переход к форуму:
  


Текущее время: Sat Nov 23 10:59:58 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00941 секунд