「正規表現の使用」

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 の標準ライブラリがしばしば十分であり、正規表現を扱う際のその有用性と汎用性を強調しています。