Flutter/Dart - 문자열에서 숫자만 추출

문자열에서 숫자만 추출하는 방법을 소개합니다.

1. 정규표현식(Regex)를 이용한 방법

replaceAll(regex, replacement)는 문자열에서 정규표현식 패턴 regex에 해당하는 문자들을 찾고 replacement로 변경합니다.

  • 정규표현식은 RegExp('\\D')와 같이 객체를 생성할 수 있으며, \D가 정규표현식 패턴입니다.
  • \D는 숫자가 아닌 문자를 의미합니다.

아래와 같이 숫자가 아닌 문자를 제거하여, 문자열에서 숫자만 추출할 수 있습니다.

void main() {

    String str = "aaa1234, ^&*2233pp";

    String result = str.replaceAll(RegExp('\\D'), "");
    print(result);
}

Output:

12342233

2. 다른 정규표현식 패턴

다른 정규표현식 패턴으로 [^0-9]를 사용할 수 있습니다.

  • [0-9]는 0에서 9사이의 숫자를 의미하며, [^0-9]는 0에서 9사이의 숫자가 아닌 문자들을 의미합니다.
  • ^NOT의 의미입니다.

아래 예제는 [^0-9] 표현식을 사용하여 문자열에서 숫자만 추출합니다.

void main() {

    String str = "aaa1234, ^&*2233pp";

    String result = str.replaceAll(RegExp('[^0-9]'), "");
    print(result);
}

Output:

12342233
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha