Published: August 30 2016

AngularJS - Slugify Filter

A custom AngularJS filter for converting a string into a url slug. A slug is a url & seo friendly string containing only lowercase alphanumeric characters and hyphens "-". Slugs are often used for including titles in URLs for SEO.

(function () {
    'use strict';

        .filter('slugify', Filter);

    function Filter() {
        return function (input) {
            if (!input)

            // make lower case and trim
            var slug = input.toLowerCase().trim();

            // replace invalid chars with spaces
            slug = slug.replace(/[^a-z0-9\s-]/g, ' ');

            // replace multiple spaces or hyphens with a single hyphen
            slug = slug.replace(/[\s-]+/g, '-');

            return slug;

Example usage of AngularJS Slugify Filter

<a href="{{post._id}}/{{post.title | slugify}}">{{post.title}}</a>


Subscribe or Follow Me For Updates

Subscribe to my YouTube channel or follow me on Twitter, Facebook or GitHub to be notified when I post new content.

Other than coding...

I'm currently attempting to travel around Australia by motorcycle with my wife Tina on a pair of Royal Enfield Himalayans. You can follow our adventures on YouTube, Instagram and Facebook.

Need Some AngularJS Help?

Search fiverr to find help quickly from experienced AngularJS developers.

Supported by