toSnakeCase method

String toSnakeCase()

Converts a camelCase or PascalCase string to snake_case.

'helloWorld'.toSnakeCase() // 'hello_world'

Implementation

String toSnakeCase() {
  if (isEmpty) return '';
  return replaceAllMapped(
    RegExp(r'(?<=[a-z0-9])([A-Z])'),
    (m) => '_${m[1]}',
  ).replaceAll(RegExp(r'[\s\-]+'), '_').toLowerCase();
}