20 lines
410 B
JavaScript
20 lines
410 B
JavaScript
|
const snakeCase = function (string) {
|
||
|
// wtf case
|
||
|
string = string.replace(/\.\./g, " ");
|
||
|
|
||
|
// this splits up camelcase IF there are no spaces in the word
|
||
|
if (string.indexOf(" ") < 0) {
|
||
|
string = string.replace(/([A-Z])/g, " $1");
|
||
|
}
|
||
|
|
||
|
return string
|
||
|
.trim()
|
||
|
.toLowerCase()
|
||
|
.replace(/[,\?\.]/g, "")
|
||
|
.replace(/\-/g, " ")
|
||
|
.split(" ")
|
||
|
.join("_");
|
||
|
};
|
||
|
|
||
|
module.exports = snakeCase;
|