[SOLVED] How to change camelCase to slug-case (or kabob-case) via regex in JavaScript

Issue

For some reason, this answer I found for (supposedly) how to do it in php just gives me the wrong matches.
It seems to add the dash, but also replace the capital letter with a copy of the remainder of the string, so I want “abcZxc” to turn into “abc-zxc”, but instead it turns it into “abd-zxczxc”

This, plus a bunch of other variations, is what I’ve tried, but can’t get it to work.

filterGroup = aNiceString;
console.log(filterGroup.replace(/[A-Z]+/g, "-1$'"))

Thanks

Solution

Try the following:

var result = "fooBarBaz".replace(/([A-Z])/g, "-$1").toLowerCase(); 
console.log(result);

Answered By – Patrik Oldsberg

Answer Checked By – Pedro (BugsFixing Volunteer)

Leave a Reply

Your email address will not be published. Required fields are marked *