betweenBrackets method

  1. @useResult
String? betweenBrackets()

Returns the content between the first matching bracket pair found, or null if none is found.

Tries parentheses, square brackets, angle brackets, and curly braces in order.

Implementation

@useResult
String? betweenBrackets() {
  if (isEmpty) {
    return null;
  }

  // Try each bracket family in priority order, returning the first non-empty
  // result. Empty content is skipped so "()" doesn't shadow a later "[x]".
  final String parens = between('(', ')');
  if (parens.isNotEmpty) return parens;

  final String squares = between('[', ']');
  if (squares.isNotEmpty) return squares;

  final String angles = between('<', '>');
  if (angles.isNotEmpty) return angles;

  final String curlies = between('{', '}');
  if (curlies.isNotEmpty) return curlies;

  return null;
}