Created
September 12, 2011 14:31
-
-
Save bentruyman/1211400 to your computer and use it in GitHub Desktop.
JavaScript Slug Generator
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Generates a URL-friendly "slug" from a provided string. | |
// For example: "This Is Great!!!" transforms into "this-is-great" | |
function generateSlug (value) { | |
// 1) convert to lowercase | |
// 2) remove dashes and pluses | |
// 3) replace spaces with dashes | |
// 4) remove everything but alphanumeric characters and dashes | |
return value.toLowerCase().replace(/-+/g, '').replace(/\s+/g, '-').replace(/[^a-z0-9-]/g, ''); | |
}; |
Just a heads-up: You should probably swap steps 3 and 4, otherwise you can end up with more consecutive dashes again after stripping some characters. Step 2 is probably superfluous given the steps that follow.
thanks @pid
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
take a look to http://pid.github.io/speakingurl/ slugify with a lot of options ;-)