개요
- Spring에서 쓰인다.
- URL을 위한 패턴
- URL을 표현할 때 쓰인다.
- 일반적인 패턴(정규표현식 등)과 마찬가지로 asterisk(
*)는 wild card 역할.
패턴
*: 0개 또는 그 이상의 글자
?: 한 글자
**: 계층을 포함하는 wild card.
예를 들어 user/**는 user/profile, user/login, user/login/error 모두 포함한다.
{{ANY_URL}}/: {{ANY_URL}}/**과 동일하다. 즉 맨 끝의 **은 생략할 수 있다.
하지만 난 생략하지 않는 편이다. 별 이유는 없고 그냥 헷갈려서..
예시 1
/logs/?*.log
/logs/로 시작한다.
?에 의해 최소 한 글자, *에 의해 여러 글자도 가능하다.
?만 쓰면 파일명이 한 글자인 경우(Ex: a.log)에만 match되고, *만 쓰면 파일 명이 .log인 경우도 match된다.
- 확장자가
log다(.log로 끝난다).
예시 2
/board/**/list
/files/로 시작한다.
/files/ 다음에 중간 경로가 있을 수도 있고 없을 수도 있다.
/logs로 끝난다.