이것이 쉬운 일이기를 바랍니다. 저는 REG_EXTRACT
Informatica를 사용하여 변수에서 파일 이름을 추출하고 있습니다. 정규식을 사용하여 추출할 콘텐츠를 식별합니다. 여기 내 예가 있습니다. powercenter에 진입했을 때의 파일명과 파일 경로입니다.
FILENAME=/test_files/infa_test/nippy/SrcFiles/JUNK/JUNK_OPS_SPINK_PAE_01-01-01-01-01-99.csv
REG_EXTRACT($FILENAME,'^\/(.+\/)*(.+)$',2).
결과 JUNK_OPS_SPINK_PAE_01-01-01-01-01-99.csv
JUNK/ 뒤, "JUNK_OPS"와 같이 _SPINK 앞의 file_name만 추출하는 정규식 매개변수를 작성하는 데 문제가 있습니다. 밑줄은 파일마다 다르지만 "_SPINK"는 항상 추출해야 하는 항목 뒤에 나타납니다. 어떤 도움이라도 좋을 것입니다.
답변1
어쩌면 다음과 같은 것일 수도 있습니다.
^.*\/(.*)_SPINK.*$
안타깝게도 Informatica에 액세스하여 테스트할 수는 없지만 sed
다음에 동의합니다.
echo '/test_files/infa_test/nippy/SrcFiles/JUNK/JUNK_OPS_SPINK_PAE_01-01-01-01-01-99.csv' |
sed -E 's/^.*\/(.*)_SPINK.*$/\1/'
그러면 JUNK_OPS
.
REG_EXTRACT
작동 방식 에 따라 다음과 같이 단축될 수 있습니다.
\/([^/]*)_SPINK