У меня есть этот набор данных в postgresql:
en_MY_V2_CID_MY_SEM_1_1_0_0
en_MY_V2_CID_MY_SEM_2_101_1703_0
en_MY_V2_CID_MY_SEM_2_101_1724_0
en_MY_CID_MY_DIS_1_100_1705_0068
en_MY_CID_MY_DIS_1_100_1705_0068
Я хочу извлечь подстроку так:
en_MY_V2_CID_MY_SEM_1
en_MY_V2_CID_MY_SEM_2
en_MY_V2_CID_MY_SEM_2
en_MY_CID_MY_DIS_1
en_MY_CID_MY_DIS_1
Проблема в том, что левая структура не постоянна, поэтому я не могу понять их с помощью регулярных выражений. Вместо этого правая структура имеет постоянную в формате _numbers_numbers_numbers_numbers
. Поэтому я пытаюсь использовать этот запрос в postgresql:
select substring(name from '_\d+_\d+_\d+$') from logs;
И получите:
1_0_0
101_1703_0
101_1724_0
100_1705_0068
1705_0068
Итак, вопрос в том, как отменить или обрезать предыдущую подстроку, чтобы получить результаты?