[javascript] 정규 표현식

정규 표현식은 문자열 패턴을 매칭하기 위해 사용되는 표현식입니다. JavaScript에서는 내장된 정규 표현식 객체를 사용하여 문자열을 검색하고 조작할 수 있습니다.

정규 표현식 패턴 작성하기

정규 표현식 패턴은 슬래시 (/)로 감싸진 문자열로 작성됩니다.

let pattern = /pattern/;

기본적인 매칭

정규 표현식을 사용하여 문자열과 패턴을 매칭하는 가장 간단한 방법은 test() 메서드를 사용하는 것입니다.

let pattern = /hello/;
let str = 'hello world';
let result = pattern.test(str); // true

플래그

정규 표현식 패턴 뒤에는 플래그를 사용하여 검색의 옵션을 설정할 수 있습니다. 주로 사용하는 플래그는 다음과 같습니다:

이러한 플래그를 사용하기 위해서는 정규 표현식 패턴 뒤에 슬래시를 닫은 후에 플래그를 추가합니다.

let pattern = /pattern/gi;

문자열에서 매칭된 부분 찾기

정규 표현식을 사용하여 문자열에서 매칭된 부분을 찾으려면 match() 메서드를 사용합니다.

let pattern = /hello/;
let str = 'hello world';
let result = str.match(pattern); // ['hello']

문자열 내에서 패턴 대체하기

정규 표현식을 사용하여 문자열 내에서 패턴을 찾아 다른 문자열로 대체하려면 replace() 메서드를 사용합니다.

let pattern = /hello/;
let str = 'hello world';
let newStr = str.replace(pattern, 'hi'); // 'hi world'

정규 표현식으로 문자열 분할하기

정규 표현식을 사용하여 문자열을 분할하려면 split() 메서드를 사용합니다.

let pattern = /\s+/;
let str = 'hello world';
let result = str.split(pattern); // ['hello', 'world']

정규 표현식을 사용한 검색

정규 표현식을 사용하여 문자열 내에서 패턴을 검색하려면 search() 메서드를 사용합니다.

let pattern = /hello/;
let str = 'hello world';
let result = str.search(pattern); // 0 (첫 번째 인덱스)

정규 표현식의 패턴 구성 요소

정규 표현식 패턴은 다양한 구성 요소를 사용하여 작성할 수 있습니다. 이 구성 요소는 복잡한 매칭 규칙을 만들 수 있게 해줍니다. 몇 가지 예시는 다음과 같습니다:

다양한 구성 요소를 조합하여 유연하고 정확한 매칭 규칙을 작성할 수 있습니다.

정규 표현식 사용 예시

다음은 정규 표현식을 사용한 몇 가지 예시입니다.

이메일 주소 검증

let pattern = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
let email = 'test@example.com';
let result = pattern.test(email); // true

전화번호 형식 일치 여부 확인

let pattern = /^\d{3}-\d{3,4}-\d{4}$/;
let phone = '010-1234-5678';
let result = pattern.test(phone); // true

이처럼 정규 표현식은 다양한 상황에서 유용하게 사용될 수 있습니다. 여러분은 위의 예시를 참고하여 더 복잡한 정규 표현식 패턴을 작성할 수 있습니다.