목차/14. 정규표현식·문자셋

14정규표현식·문자셋정규표현식·문자셋

Route Aggregation and Policy에서 AS path 같은 경로 속성을 패턴으로 매칭 할 때 정규표현식이 쓰입니다. 이 부록은 Check Point Gaia 라우팅에서 쓰는 정규표현식 문법과, Gaia Clish에서 특수 문자를 입력하는 방법을 정리합니다.

어디에 쓰나

라우팅 정책에서 어떤 경로에 규칙을 적용할지 를 정할 때, 단순 일치만으로는 부족할 때가 있습니다. 특히 BGPAS path(거쳐 온 AS들의 나열)를 패턴으로 매칭 할 때 정규표현식이 유용합니다 — 예를 들어 ="특정 AS를 거쳐 온 경로만", "마지막 AS가 특정 번호인 경로만"== 같은 조건을 표현할 수 있습니다.

정규표현식 문법

다음 표는 Check Point가 구현한 표준 정규표현식 메타문자 를 정리한 것입니다.

메타문자이름설명
\Backslash(역슬래시)메타문자를 이스케이프합니다. 출력 불가능한 문자나 문자 종류(character types)를 나타낼 때도 씁니다.
[ ]Square Brackets(대괄호)문자 클래스(character class) 를 정의합니다.
( )Parenthesis(괄호)하위 패턴(sub-pattern) 을 묶어, 감싼 문자열 전체에 메타문자를 적용합니다.
{min[,max]}Curly Brackets(중괄호)최소/최대 횟수 한정자(Min/Max Quantifier) 입니다(아래 참고).
.Dot(점)임의의 한 문자 와 일치합니다.
?Question Mark(물음표)앞 패턴의 0회 또는 1회 출현({0,1}과 동일).
*Asterisk(별표)앞 패턴의 0회 이상 출현.
+Plus Sign(더하기)앞 패턴의 1회 이상 출현({1,}과 동일).
`\`Vertical Bar(세로줄)택일(alternative) — 양쪽 중 하나와 일치.
^Circumflex(캐럿)패턴을 버퍼(보통은 단어)의 시작 에 고정합니다.
$Dollar(달러)패턴을 버퍼(보통은 단어)의 끝 에 고정합니다.
-Hyphen(하이픈)문자 클래스 안에서 범위(range) 를 나타냅니다.

중괄호 {min[,max]} 한정자는 출현 횟수를 다음과 같이 세밀하게 지정합니다.

  • {m} — 정확히 m회 출현.
  • {m,n}m회부터 n회까지 출현.
  • {m,}최소 m회 이상 출현.

Gaia Clish에서의 특수 문자

일부 문자는 Gaia Clish가 명령 처리에 쓰는 문자라, 패턴 안에 그대로 입력하려면 별도 방법이 필요합니다.

  • ? 문자를 입력하려면CTRL V 키를 누른 다음 SHIFT ? 를 누릅니다.
  • \ 문자를 입력하려면\\(역슬래시 두 개) 로 입력합니다.