Dart:
정규 표현식 사용하기
사용 방법:
Dart에서는 RegExp
클래스를 정규 표현식에 사용합니다. 여기 문자열 내에서 간단한 패턴을 일치시키는 기본 예제가 있습니다:
void main() {
var pattern = RegExp(r'\bDart\b');
var text = 'Learning Dart programming is exciting.';
if (pattern.hasMatch(text)) {
print('Match found!');
} else {
print('No match found.');
}
// 출력: Match found!
}
문자열에서 일치하는 항목을 추출하려면 allMatches
메소드를 사용할 수 있습니다. 이 메소드는 일치하는 항목의 반복 가능한 객체를 반환합니다:
void main() {
var pattern = RegExp(r'\b\w+\b');
var text = 'Dart is awesome!';
var matches = pattern.allMatches(text);
for (final match in matches) {
print(match.group(0)); // 이는 일치하는 부분 문자열을 출력합니다.
}
// 출력:
// Dart
// is
// awesome
}
텍스트 교체는 replaceFirst
또는 replaceAll
메소드를 사용하여 수행할 수 있습니다:
void main() {
var pattern = RegExp(r'\bDart\b');
var text = 'Dart is not just a dart.';
// 첫 번째 발생을 교체
var modifiedText = text.replaceFirst(pattern, 'Flutter');
print(modifiedText);
// 출력: Flutter is not just a dart.
// 모든 발생을 교체
modifiedText = text.replaceAll(pattern, 'Flutter');
print(modifiedText);
// 출력: Flutter is not just a flutter.
}
정규 표현식 패턴으로 문자열을 분할하는 것은 split
메소드를 사용하여 간단합니다:
void main() {
var pattern = RegExp(r'\s+'); // 공백 문자와 일치
var text = 'Dart is fun';
var parts = text.split(pattern);
print(parts);
// 출력: [Dart, is, fun]
}
Dart의 RegExp
에서 직접 지원하지 않는 복잡한 파싱 또는 유효성 검사가 필요한 경우, 제삼자 라이브러리를 고려할 수 있지만, 일반적인 정규 표현식 작업에 충분한 Dart의 표준 라이브러리는 정규 표현식을 다루는 데 있어 그 유용성과 다양성을 강조합니다.