Используется в PostgreSQL.У меня есть набор строк, например:
xxx Heartbeat
yyy Heartbeat
xxx Code Red Entry/Exit
yyy Code Red Entry/Exit
xxx TFTP Server Heartbeat
yyy TFTP Server Heartbeat
Мне нужно разделить ту вторую часть, которая находится после неизвестных строк xxx / yyy, которые могут иметь пробелы внутри.До того, как у меня были строки поиска, которые не пересекались и которые использовали вид:
SUBSTRING(description, '(?i).*(Code Red Entry/Exit|TFTP Server Heartbeat).?')
Но после того, как у меня появилась другая опция (Heartbeat), это регулярное выражение начало выбирать только «Heartbeat» во всех случаях, если яиспользовать
SUBSTRING(description, '(?i).*(Code Red Entry/Exit|TFTP Server Heartbeat|Heartbeat).?')
Как я могу это исправить?
Upd.По сути, мне нужна замена регулярного выражения для следующего кода:
CASE WHEN description ILIKE '%TFTP Server Heartbeat' THEN 'TFTP Server Heartbeat'
WHEN description ILIKE '%Heartbeat' THEN 'Heartbeat'
WHEN description ILIKE '%Code Red Entry/Exit' THEN 'Code Red Entry/Exit'
etc...
END