
RegExp란?자바스크립트에서 RegExp 생성자는 패턴을 사용하여 텍스트를 판별할 때 사용하는 정규 표현식 객체를 생성합니다.
※ 정규 표현식에 대한 설명은 아래 링크를 참조하십시오.정규 표현식 또는 정규식은 문자열에서 특정 문자 조합을 찾기 위한 패턴입니다. 자바스크립트에서는 정규 표현식도 오브젝트로 RegExp의 exec()와 test() 메서드를 사용할 수 있습니다. String의 match(), matchAll()(en-US), replace(), replaceAll()(en-US), search(), split() 메서드와도 함께 사용할 수 있습니다. 이 장에서는 자바스크립트의 정규 표현식을 설명합니다.developer.mozilla.org 사용 구문 매개 변수 설명 pattern▶ 정규 표현식을 나타내는 텍스트입니다.▶ ES5부터는 생성자 표기법에 한정하여 다른 RegExp 객체 또는 리터럴을 사용할 수 있습니다. 패턴은 특수문자를 포함할 수 있으며 일반적인 문자열 리터럴보다 넓은 범위의 값을 판별할 수 있습니다.flags▶ 정규 표현식에 추가하는 플래그입니다.▶ 정규 표현식 객체를 패턴으로 제공한 경우 flags 문자열은 제공한 객체의 플래그를 모두 대체하고 last Index를 0으로 초기화 합니다. (ES2015 이후) ▶ flags를 지정하지 않고 정규 표현식 객체를 제공한 경우 해당 객체의 플래그와 last Index를 복제합니다.※ flags는 다음과 같은 문자를 조합하여 지정할 수 있습니다.문자 설명 g(global, 전역 판별) 최초 일치로 중단하지 않고 문자열 전체를 판별합니다. i(ignorecase, 대문자 무시) u 플래그까지 활성화된 경우 Unicode 대문자 폴딩을 사용합니다. m(multiline, 여러 줄) 시작과 끝 문자(^와$)가 여러 줄에 걸쳐 작동합니다. 즉, 전체 입력 문자열의 처음과 끝뿐만 아니라 (
야
으로 구분됨) 각각의 열의 처음과 끝도 일치합니다. s(“dotAll”) 이 교체에도 일치합니다. u(unicode)pattern을 Unicode 코드 포인트 시퀀스로 처리합니다. (바이너리 문자열(en-US) 참조)y(sticky, 접착)가 정규 표현의 lastIndex 속성에 명시된 인덱스만으로 판별하여 이전/이후 인덱스로 판별을 시도하지 않습니다.예제 ▶Ex1) 아래의 세 표현식은 모든 것과 같은 정규 표현을 생성합니다.실행결과 참고 ‘리 트롤 표기법’은 표현식을 평가할 때 정규표현을 컴파일합니다. 예를 들어, 범복문 안에서 사용하는 정규 표현을 리터럴 표기법으로 생성하면 정규 표현을 매번 다시 컴파일하지 않는다는 장점이 있습니다. 한편, ‘생성자 함수’를 사용하면 정규 표현식이 런타임에 컴파일됩니다. 따라서 패턴이 바뀔 수 있거나 사용자 입력과 함께 알 수 없는 외부 소스에서 가져오는 정규 표현의 경우 생성자 함수를 사용하는 것이 좋습니다.
▶ Ex2) 아래 코드는 대소문자를 무시하고 “quick brown”으로 시작하여 “jumps”로 끝나는 문자열을 찾고 그 안에 “brown”과 “jumps” 문자열을 찾습니다.실행 결과 결과에 대한 설명 객체 속성/인덱스 값 설명 result[0] Quick Brown Fox Jumps 정규식 조건에 일치하는 문자열 [1], [2] Brown, Jumps 괄호로 덮은 부분 문자열 index 4일, 위로의 말은 문자열 시작 지점 인덱스 input The Quick Brown Fox Jumps Over The Lazy Dog 원본 문자열 레퍼런스(Reference) 자바스크립트 정규 표현(Regular Expression) 정규 표현(Regular Expression)은blog.naver.comRegExp 생성자는 패턴을 사용하여 텍스트를 판별할 때 사용합니다.developer.mozilla.orgRegExp 생성자는 패턴을 사용하여 텍스트를 판별할 때 사용하는 정규 표현식 객체를 생성합니다.developer.mozilla.orgexec() 메서드는 주어진 문자열에서 일치 탐색을 수행한 결과를 배열 또는 null로 반환합니다.developer.mozilla.org