10.3 정규 표현식(Regular Expressions)
10.3 정규 표현식(Regular Expressions)
Haxe는 정규 표현식에 대한 내장 지원을 제공합니다. 문자열의 형식을 검증하거나, 문자열을 변환하거나, 주어진 텍스트에서 정규 데이터를 추출하는 데 사용할 수 있습니다.
Haxe는 정규 표현식을 만들기 위한 특별한 구문을 제공합니다. ~/ 조합과 단일 / 문자 사이에 입력해 정규 표현식 객체를 만들 수 있습니다:
var r = ~/haxe/i;
또는 일반 구문으로 정규 표현식을 만들 수 있습니다:
var r = new EReg("haxe", "i");
첫 번째 인자는 정규 표현식 패턴이 있는 문자열이고, 두 번째 인자는 플래그(아래 참조)가 있는 문자열입니다.
이러한 표준 정규 표현식 패턴을 사용할 수 있습니다:
.모든 문자*0회 이상 반복+1회 이상 반복?선택적 0회 또는 1회[A-Z0-9]문자 범위[^\r\n\t]범위에 없는 문자(...)문자 그룹 일치 괄호^문자열의 시작(멀티라인 매칭 모드에서는 줄의 시작)$문자열의 끝(멀티라인 매칭 모드에서는 줄의 끝)|"OR" 문
예를 들어 다음 정규 표현식은 유효한 이메일 주소를 일치시킵니다:
~/[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z][A-Z][A-Z]*/i;
정규 표현식 끝의 i는 대소문자를 구분하지 않는 매칭을 활성화하는 플래그입니다.
가능한 플래그는 다음과 같습니다:
i대소문자 구분 없는 매칭g전역 대체 또는 분할, 아래 참조m멀티라인 매칭,^와$는 줄의 시작과 끝을 나타냄s점.도 새 줄과 일치함 (C#과 ES2018 이전 JavaScript 버전은 지원하지 않음)uUTF-8 매칭 사용 (Neko와 C++ 타깃 전용)
관련 내용
메서드에 대한 자세한 내용은 EReg API를 참조하세요.
Haxe Code Cookbook의 정규 표현식에 관한 자습서와 예제.