[Dart] 정규 표현식 (Regular Expressions)

DOHYUN KIM·2022년 10월 2일
0

Dart의 정규 표현식은 JavaScript의 정규 표현식과 동일한 구문 및 의미를 사용한다.

String pattern = r'^(source)$';
var regExp = RegExp(pattern, {multiLine: true}, {caseSensetive: false});

매개 변수 (Parameter)설명
String sourceString으로서의 정규 표현식
{bool multiLine}다중 행 정규 표현식인지 여부 (전체 줄이 아닌 각 줄의 처음과 끝에 ^ 및 $ 일치)
{bool caseSensetive}식이 대소문자를 구분하는 경우
  • 정규식을 작성할 때 "원시 문자열 (접두사 r)"을 사용하면 표현식에서 이스케이프 처리되지 않은 백 슬래시를 사용할 수 있다.

ex) IPv4 validation

bool validateIpv4(String input) {
  /*
  * [0-1]?[0-9]{1,2} → 0 ~ 199
  * 2[0-4][0-9] → 200 ~ 249
  * 25[0-5] → 250 ~ 255
  */
  final regExp = RegExp(
      r'^((([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))\.){3}([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5])$');

  return regExp.hasMatch(input);
}
profile
DXXXXX KXX

0개의 댓글