본 장에서는 UTL_URL 패키지의 기본 개념과 패키지 내의 함수를 사용하는 방법을 설명한다.
UTL_URL는 URL 주소를 ESCAPE 형태로 변환하기 위한 함수를 제공하는 패키지이다. ESCAPE 형태는 Legal Characters와 Reserved characters를 제외한 문자를 %xx(ASCII의 16진수 표현)으로 변경하는 것을 말한다.
문자 구분 | 정규 표현식 |
---|---|
Legal Characters | [0-9] | [a-zA-Z] | - | _ | . | ! | ~ |* | ` | ( | ) |
Reserved characters | ; | / | ? | ; | @ | & | = | + | $ | , |
본 절에서는 UTL_URL 패키지에서 제공하는 함수를 알파벳 순으로 설명한다.
URL 주소를 ESCAPE 형태로 변환하는 함수이다.
프로토타입
FUNCTION ESCAPE ( url IN VARCHAR2, escape_reserved_chars IN BOOLEAN DEFAULT FALSE, url_charset IN VARCHAR2 DEFAULT NULL ) RETURN VARCHAR2;
파라미터
파라미터 | 설명 |
---|---|
url | ESCAPE 형태로 변경할 URL 이름이다. |
escape_reserved_chars | Reserved characters를 ESCAPE 형태로 변환할지의 여부를 결정한다.
|
url_charset | 변경할 URL 주소의 문자 집합이다. 문자 집합을 변경하는 기능은 다음에 구현할 예정이므로, 기본값인 NULL로 이 파라미터를 지정한다. |
예제
BEGIN dbms_output.put_line( UTL_URL.ESCAPE('http://www.w3.org/blah blah.html') ); END; /
ESCAPE 형태(%xx)를 포함하는 URL 주소를 ESCAPE 형태가 아닌 일반 문자열로 변환하는 함수이다.
프로토타입
FUNCTION UNESCAPE ( url IN VARCHAR2, url_charset IN VARCHAR2 DEFAULT NULL ) RETURN VARCHAR2;
파라미터
파라미터 | 설명 |
---|---|
url | ESCAPE 형태의 URL 주소의 문자열이다. |
url_charset | 변경할 URL 주소의 문자 집합이다. 문자 집합을 변경하는 기능은 다음에 구현할 예정이므로, 기본값인 NULL로 이 파라미터를 지정한다. |
예외 상황
예외 상황 | 설명 |
---|---|
URL_BAD_URL | 잘못된 ESCAPE 문자열을 포함하는 경우이다. |
예제
DECLARE ourl VARCHAR2(32767); eurl VARCHAR2(32767); BEGIN eurl := UTL_URL.ESCAPE('http://www.w3.org/Protocols/'); ourl := UTL_URL.UNESCAPE(eurl); END; /