I\'m trying to use regexp_extract on hive.
I have data which is varying in nature, such as:
a2=new something
a1=asdasdsad;a2=old something;a3=asadasdsadsa
(?<=a2=)[^;]*(?:;|$)
Try this.See demo.
https://www.regex101.com/r/rC2mH4/7
(?<=a2=)=?([^;\n]*)
I think RegEx101 is pretty helpful for you to understand the logic. I tried the above expression and it seem to work to extract the content for a2
with or without ;
.
This simple regex will do the work:
.*a2=?(.*?);
It's your same regex but with only one capturing group (you don't need to capture what it's before the a2 key).