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
が直接サポートしていない複雑な解析や検証には、サードパーティのライブラリを検討するかもしれませんが、一般的な regex タスクには Dart の標準ライブラリがしばしば十分であり、正規表現を扱う際のその有用性と汎用性を強調しています。