dist/utilify.esm.js
function underscore(str) {
        return str.replace(/[-\s]+/g, '_').replace(/([A-Z\d]+)([A-Z][a-z])/g, '$1_$2').replace(/([a-z\d])([A-Z])/g, '$1_$2').toLowerCase();
    }
function underscore(str) {
        return str.replace(/[-\s]+/g, '_').replace(/([A-Z\d]+)([A-Z][a-z])/g, '$1_$2').replace(/([a-z\d])([A-Z])/g, '$1_$2').toLowerCase();
    }
function underscore ( str ) { return str . replace ( / [-\s]+ / g , '_' ) . replace ( / ([A-Z\d]+)([A-Z][a-z]) / g , '$1_$2' ) . replace ( / ([a-z\d])([A-Z]) / g , '$1_$2' ) . toLowerCase ( ) ; }
Converts hyphens and camel casing to underscores.

@param  {String} str String to convert
@return {String}
Converts hyphens and camel casing to underscores .