toSnakeCase
Converts this string to snake_case.
Words are detected at underscores, hyphens, whitespace, and camel case transitions, then lower cased and joined with underscores. Returns an empty string when no word characters are present.