Чтобы извлечь подстроки между первой парой подчеркиваний, вам нужно использовать
regexp_substr('Mydata_xyz_aug21','_([^_]+)_', 1, 1, NULL, 1)
Чтобы получить имя файла без расширения, вам нужно
regexp_substr('FinalProject/MyProject/aIBM_MyProjectFile.exe.ld','.*/([^.]+)', 1, 1, NULL, 1)
Обратите внимание, что каждое регулярное выражениесодержит группу захвата (шаблон внутри (...)
), и к этому значению можно обратиться с последним аргументом 1
к функции regexp_substr
.
Шаблон _([^_]+)_
находит первый _
, затемпомещает 1 или более символов, отличных от _
, в группу 1, а затем сопоставляет другой _
.
Шаблон .*/([^.]+)
соответствует всему тексту до последнего /
, затем захватывает 1 или более символовкроме .
в группу 1, используя ([^.]+)
.