anchor.diff:    ///
     /// The result may be `null` if the pattern didn't assign a value to it
     /// as part of this match.
  +  /// ```dart import dart:convert
  +  ///
  +  /// final string = '[00:13.37] This is a chat message.';
  +  /// final regExp = RegExp(r'^\[\s*(\d+):(\d+)\.(\d+)\]\s*(.*)$');
  +  /// final match = regExp.firstMatch(string)!;
  +  /// final message = jsonEncode(match[0]!); // '[00:13.37] This is a chat message.'
  +  /// final hours = jsonEncode(match[1]!); // '00'
  +  /// final minutes = jsonEncode(match[2]!); // '13'
  +  /// final seconds = jsonEncode(match[3]!); // '37'
  +  /// final text = jsonEncode(match[4]!); // 'This is a chat message.'
  +  /// ```
     String? group(int group);
   
     /// The string matched by the given [group].
  
positive.code:   ///
    /// The list contains the strings returned by [group] for each index in
    /// [groupIndices].
    List<String?> groups(List<int> groupIndices);
  
    /// Returns the number of captured groups in the match.
  
negative.code:   ///
    /// Returns a match if the pattern matches a substring of [string]
    /// starting at [start], and `null` if the pattern doesn't match
    /// at that point.
    ///
    /// The [start] must be non-negative and no greater than `string.length`.
    Match? matchAsPrefix(String string, [int start = 0]);
  