odin-javascript-exercises/snakeCase/snakeCase.js

20 lines
409 B
JavaScript
Raw Normal View History

2017-12-15 11:26:05 -08:00
const snakeCase = function(string) {
// wtf case
string = string.replace(/\.\./g, " ");
2017-08-25 12:16:42 -07:00
2017-12-15 11:26:05 -08:00
// this splits up camelcase IF there are no spaces in the word
if (string.indexOf(" ") < 0) {
string = string.replace(/([A-Z])/g, " $1");
}
2017-08-25 12:16:42 -07:00
2017-12-15 11:26:05 -08:00
return string
.trim()
.toLowerCase()
.replace(/[,\?\.]/g, "")
.replace(/\-/g, " ")
.split(" ")
.join("_");
};
module.exports = snakeCase;