If you need to extract string between the last underscore character and the next dot character you can do it without regexp - using just basic string functions like below:
WITH -- S a m p l e D a t a :
tbl AS
( Select 1 as ID, 'L8_P0_TOPSIDE12_AA-MPS-K-PCE.JPG' as FNAME From Dual Union All
Select 2 as ID, 'L10_P1_SIDE_X_12_BB-XYZ-K-PCE333.JPG' as FNAME From Dual
)
-- S Q L :
Select SubStr(FNAME,
Length(FNAME) - InStr(REVERSE(FNAME), '_', 1, 1) + 2,
InStr(FNAME, '.', 1, 1) - (Length(FNAME) - InStr(REVERSE(FNAME), '_', 1, 1) + 2)
) As SUB_NAME
From tbl
| SUB_NAME |
| AA-MPS-K-PCE |
| BB-XYZ-K-PCE333 |
fiddle
'TOPSIDE[0-9]+_[^.]*'