라벨이 Regular Expression인 게시물 표시

정규 표현식(regular expression) 구성 요소

출처 - WRITING SECURE CODE (안전한 코드 작성 기술) ^ 문자열의 시작에서 일치하는지 검사한다. $ 문자열의 종료에서 일치하는 검사한다. * {0,}과 동일하며, 앞 패턴과 0번 혹은 그 이상 일치하는지 검사한다. + {1,}과 동일하며, 앞 패턴과 1번 혹은 그 이상 일치하는지 검사한다. ? {0, 1}과 동일하며, 앞 패턴과 0번 혹은 1번 일치하는지 검사한다. {n} 앞 패턴이 정확히 n번인지를 검사한다. {n,} 앞 패턴이 n번 혹은 그 이상인지를 검사한다. {,m} 앞 패턴이 m번 이하인지를 검사한다. {n,m} 앞 패턴이 n번에서 m번인지를 검사한다. . \n 문자를 제외한 한 문자가 일치하는지 검사한다. (pattern) 패턴(pattern)과 일치하는지 검사하여 그 결과 데이터를 변수에 저장한다. 결과를 저장하는 변수는 프로그래밍 언어에 따라 다르다. 패턴 그룹, 예를 들면, (xx)+는 괄호내의 패턴이 1번 이상 있는지를 검사한다. 만약 비-저장을 원하면 (?:xx)로 적어 주면 일반식 엔진은 데이터를 저장하지 않는다. aa|bb aa 혹은 b와 일치하는지 검사한다. [abc] 사각 괄호내에 표시된 문자 중 한 문자(a, b, c)라도 일치하는지 검사한다. [^abc] 사각 괄호내에 표시된 문자 중 모든 문자(a, b, c)가 없는지 검사한다. [a-z] a부터 z까지 범주에 있ㄴ느 문자가 포함되어 있는지 검색한다. \ 이스케이프 문자. \n과 \/은 특수 문자이고, \1과 같이 \d로 표시되면 앞에서 찾은 데이터를 참조하는 데 사용된다. \b 단어와 스페이스간의 위치가 일치하는지 검사한다. 예를 들면 "er\b"는 "never"에서는 "er"이 일치한다고 찾지만, "verb"에서는 일치하지 않는다고 리턴한다. \B 해당 위치에서 단어를 끊어낸다. 예를 들면, "ea*r\B"는 "never early"에서 "ea...