(modified) Trying to get only first match of condition (?<=Location:.*?\().*?(?=\))
Here is data:
--batchresponse_bla_bla_bla_\r\n--changesetresponse__bla_bla_bla_\r\nLocation: https://site.ru/CRM/api/data/v9.0/gm_preorders(a341eb4e-2fdf-eb11-a30b-ac1f6b465e3b)\r\nOData-EntityId: https://site.ru/CRM/api/data/v9.0/gm_preorders(a341eb4e-2fdf-eb11-a30b-ac1f6b465e3b)\r\n_bla_bla_bla_\r\n--changesetresponse__bla_bla_bla_Location: https://site.ru/CRM/api/data/v9.0/gm_preorders(a841eb4e-2fdf-eb11-a30b-ac1f6b465e3b)\r\nOData-EntityId: https://site.ru/CRM/api/data/v9.0/gm_preorders(a841eb4e-2fdf-eb11-a30b-ac1f6b465e3b)\r\n_bla_bla_bla_\r\n--changesetresponse_n_bla_bla_bla_\r\nLocation: https://site.ru/CRM/api/data/v9.0/gm_preorders(74748d08-2ee6-eb11-a30b-ac1f6b465e3b)\r\nOData-EntityId: https://site.ru/CRM/api/data/v9.0/gm_preorders(74748d08-2ee6-eb11-a30b-ac1f6b465e3b)\r\nn_bla_bla_bla_\r\n--changesetresponse_etc
and it returns:
match 1: a341eb4e-2fdf-eb11-a30b-ac1f6b465e3b
match 2: a341eb4e-2fdf-eb11-a30b-ac1f6b465e3b
match 3: a841eb4e-2fdf-eb11-a30b-ac1f6b465e3b
match 4: a841eb4e-2fdf-eb11-a30b-ac1f6b465e3b
match 5: 74748d08-2ee6-eb11-a30b-ac1f6b465e3b
match 6: 74748d08-2ee6-eb11-a30b-ac1f6b465e3b
Is there a possibility to match only first occurrence of each match (so i need 3 matches: 1, 3 and 5) with lookbehind and lookahead and without grouping or other conditions?
Found solution with a help:
(?<=Location:[^(]*?\().*?(?=\))