개발 일지/etc
정규 표현식(정규식)
미숫가루설탕많이
2023. 2. 14. 21:42
정규 표현식(regular expression, regexp)은 프로그래밍에서 문자열을 다룰 때, 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다.
주로 프로그래밍 언어에서 문자열의 검색과 치환을 위한 용도로 사용된다. 일반적인 조건문으로는 복잡한 코드도 정규 표현식을 이용하면 간단하게 표현할 수 있지만 정규 표현식을 숙지하고 있지 않다면 이해하기 힘들다.
다음은 정규 표현식의 용어들이다.
- ^
: 문자열의 시작을 의미한다. - $
: 문자열의 끝을 의미한다. - *
: * 앞에 평가할 대상이 0개 이상인지를 평가한다. - \s
: 공백 문자열을 의미한다. - \S
: 공백 문자열이 아닌 나머지 문자열을 의미한다. - ?
: ? 앞에 평가할 대상이 0개 또는 1개인지를 의미한다. - +
: + 앞에 평가할 대상이 1개 이상인지를 의미한다. - .x
: 임의의 한 문자의 자리수를 표현하며, 문자열이 x로 끝난다는 것을 의미한다. - x|y
: or 여부를 표현하며, x 또는 y 문자가 존재함을 의미한다. - (x)(y)
: 그룹을 만들 수 있으며, 순서대로 번호를 부여하여 관리한다. - [a-z]
: range를 표현하며, a ~ z 사이의 문자(소문자)를 의미한다. - [A-Z]
: range를 표현하며, A ~ Z 사이의 문자(대문자)를 의미한다. - [0-9]
: range를 표현하며, 0 ~ 9 사이의 숫자를 의미한다.
ex)
^010-\\d{3,4}-\\d{4}$ // 휴대폰 번호는 010으로 시작하는 11자리 숫자와 '-'로 구성되어야 한다.