SNORT2010. 3. 2. 15:18

 문자 설명 
 ₩  그 다음 문자를 특수 문자, 리터럴, 역참조, 또는 8 진수
이스케이프로 표시한다. 예를 들어, 'n' 은 문자 "n" 을 찾고
'₩n' 은 줄 바꿈 문자를 찾는다. '₩₩' 시퀀스는 "₩" 를
찾고 '₩(' 는 "(" 를 찾는다.
 ^  입력 문자열의 시작 위치를 찾는다. Multiline 속성이
설정되어 있으면 ^ 는 '₩n' 또는 '₩r' 앞의 위치를 찾는다.
 $  입력 문자열의 끝 위치를 찾는다. Multiline 속성이 설정되어
있으면 $ 는 '₩n' 또는 '₩r' 뒤의 위치를 찾는다.
 *  부분식의 선행 문자를 0 개 이상 찾는다. 예를 들어, 'zo*'
는 "z", "zoo" 등이다. * 는 {0,} 와 같다.
 +  부분식의 선행 문자를 한 개 이상 찾는다. 예를 들어, 'zo+'
는 "zo", "zoo" 등이지만 "z" 는 아니다. + 는 {1,} 와 같다.
 ?  부분식의 선행 문자를 0 개 또는 한 개 찾는다. 예를 들어,
"do(es)?" 는 "do" 또는 "does" 의 "do" 를 찾는다. ? 는
{0,1} 과 같다.
 {n}  n 은 음이 아닌 정수이다. 정확히 n 개 찾는다. 예를 들어,
'o{2}' 는 "Bob" 의 "o" 는 찾지 않지만 "food" 의 o 두
개는 찾는다.
{n,} n 은 음이 아닌 정
 {n,}  n 은 음이 아닌 정수이다. 정확히 n 개 찾는다. 예를 들어,
'o{2}' 는 "Bob" 의 "o" 는 찾지 않지만 "foooood" 의 모든
o 는 찾는다. 'o{1,}' 는 'o+' 와 같고, 'o{0,}' 는 'o*' 와
같다.
 {n,m}  m 과 n 은 음이 아닌 정수이다. 여기서 m 은 n 보다 크거나
같다. 최소 n 개, 최대 m 개 찾는다. 예를 들어, "o{1,3}" 은
"fooooood" 의 처음 세 개의 o 를 찾는다. "o{0,1}" 은 "o?"
와 같다. 쉼표와 숫자 사이에는 공백을 넣을 수 없다.
 ?  이 문자가 다른 한정 부호(*, +, ?, {n}, {n,}, {n,m})의 바로
뒤에 나올 경우 일치 패턴은 제한적이다. 기본값인 무제한
패턴은 가능한 많은 문자열을 찾는 데 반해 제한적인 패턴은
가능한 적은 문자열을 찾는다. 예를 들어, "oooo" 문자열에서
"o+?" 는 "o" 한 개만 찾고, "o+" 는 모든 "o" 를 찾는다.
 .  "₩n" 을 제외한 모든 단일 문자를 찾는다. "₩n" 을 포함한
모든 문자를 찾으려면 '[.₩n]' 패턴을 사용한다.
 (pattern)  pattern 을 찾아 검색한 문자열을 캡처합니다. 캡처한
문자열은 VBScript 의 경우 SubMatches 컬렉션, JScript 의
경우 $0...$9 속성을 이용하여 결과로 나오는 Matches
컬렉션에서 추출할 수 있다. 괄호 문자인 ( ) 를 찾으려면
"₩(" 또는 "₩)" 를 사용한다.
 (?:pattern)  pattern 을 찾지만 검색한 문자열을 캡처하지 않는다. 즉,
검색한 문자열을 나중에 사용할 수 있도록 저장하지 않는
비캡처 검색이다. 이것은 패턴의 일부를 "or" 문자(|)로 묶을
때 유용하다. 예를 들어, 'industr(?:y|ies) 는
'industry|industries' 보다 더 경제적인 식이다.
 (?=pattern)  포함 예상 검색은 pattern 과 일치하는 문자열이 시작하는
위치에서 검색할 문자열을 찾는다. 이것은 검색한 문자열을
나중에 사용할 수 있도록 캡처하지 않는 비캡처 검색이다.
예를 들어, "Windows(?=95|98|NT|2000)" 는 "Windows
2000" 의 "Windows" 는 찾지만 "Windows 3.1" 의
"Windows" 는 찾지 않는다. 예상 검색은 검색할 문자열을
찾은 후 예상 검색 문자열을 구성하는 문자 다음부터가
아니라 마지막으로 검색한 문자열 바로 다음부터 찾기
시작한다.
 (?!pattern)  제외 예상 검색은 pattern 과 일치하지 않는 문자열이
시작하는 위치에서 검색할 문자열을 찾는다. 이것은 검색한
문자열을 나중에 사용할 수 있도록 캡처하지 않는 비캡처
검색이다. 예를 들어, "Windows(?!95|98|NT|2000)" 는
"Windows 3.1" 의 "Windows" 는 찾지만 "Windows 2000"
의 "Windows" 는 찾지 않는다. 예상 검색은 검색할
문자열을 찾은 후 예상 검색 문자열을 구성하는 문자
다음부터가 아니라 마지막으로 검색한 문자열 바로 다음부터
찾기 시작한다.
 x|y  x 또는 y 를 찾는다. 예를 들어, "z|food" 는 "z" 또는 "food"
를 찾는다. "(z|f)ood" 는 "zood" 또는 "food" 를 찾는다.
 [xyz]  문자 집합이다. 괄호 안의 문자 중 하나를 찾는다. 예를들어, "[abc]" 는 "plain" 의 "a" 를 찾는다.
 [^xyz]  제외 문자 집합이다. 괄호 밖의 문자 중 하나를 찾는다. 예를
들어, "[^abc]" 는 "plain" 의 "p" 를 찾는다.
 [a-z]  문자 범위이다. 지정한 범위 안의 문자를 찾는다. 예를 들어,
"[a-z]" 는 "a" 부터 "z" 사이의 모든 소문자를 찾는다.

'SNORT' 카테고리의 다른 글

SNORT+BASE 설치 메뉴얼 (DEBIAN/UBUNTU)  (0) 2011.09.19
정규 표현식 기호-2  (0) 2010.03.02
byte_test 기능에서 & 연산방법  (0) 2009.10.09
국내 Snort Rule 공유 블로그  (1) 2009.09.15
Posted by regexkorea