Oracle - Extraer strings - REGEXP_SUBSTR

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 110 puestos en Oracle (en relación al último mes)
Gráfica de Oracle

Extraer strings - REGEXP_SUBSTR

Publicado por Alejandro (1 intervención) el 24/06/2021 17:44:18
Buenas a tod@s,

Tengo algunos problemas para extraer algunas cadenas de caracteres de un string.

La cadena string serían algo así, 2 ejemplos:

Captcha session started for user [74635258] from ip [77.224.155.239] and User Agent [Mozilla/5.0 (iPhone; CPU iPhone OS 14_4_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148]

Starting session with login type [USER] for guid [001001-0001-000000063148963.par] from ip [85.251.26.51] and User Agent [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36]

Necesito extraer el valor del campo user del primer ejemplo(74635258), el valor de la IP y todo lo que venga despues del useragent, este ultimo caso lo he conseguido así:

1
SELECT SUBSTR(DETAILS, INSTR(DETAILS, 'and User Agent [') +16) AS USER_AGENT' FROM CAMPO;

Entendiendo que el string está contenido en el valor CAMPO.

No se si habría una manera más correcta de hacerlo. Lo que no consigo es extraer el ID del usuario ni la IP.
Hay que tener en cuenta que el valor del user no aparece siempre.

¿Alguien que controle de expresiones regulares que me pueda ayudar?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder