extractSQLs static method

List<String> extractSQLs(
  1. String sqls,
  2. RegExp commandPrefixPattern
)

Implementation

static List<String> extractSQLs(String sqls, RegExp commandPrefixPattern) {
  sqls = removeSQLsComments(sqls);
  sqls = '\n$sqls\n;';

  var list = <String>[];

  var regexpCreateTableSQL = RegExp(
      r'\s' + commandPrefixPattern.pattern + r'\s.*?;',
      caseSensitive: false,
      dotAll: true);

  sqls.replaceAllMapped(regexpCreateTableSQL, (m) {
    var sql = m[0]!;
    list.add(sql);
    return '';
  });

  return list;
}