Skip to main content

Slugify Function

String Manipulation2 functions

Utility Overview

🔗 URL-Friendly Text Transformation
Slugify functions convert any text into clean, URL-safe strings perfect for web addresses, file names, and identifiers!

  • Core Functionality:
  • Character Normalization: Remove special characters and accents
  • Space Replacement: Convert spaces to hyphens or custom separators
  • Case Transformation: Lowercase conversion for consistency
  • Cleanup: Remove leading/trailing separators and extra whitespace
  • Multiple Implementations:
  • Basic Slugify: Simple, fast conversion with default settings
  • Advanced Slugify: Configurable options for complex requirements
  • Custom Separators: Use hyphens, underscores, or custom characters
  • Length Limiting: Truncate slugs to specific maximum lengths
  • Real-World Applications:
  • Blog URLs: Convert post titles to SEO-friendly URLs
  • File Names: Create safe file names from user input
  • Database Identifiers: Generate unique, readable record IDs
  • CSS Classes: Convert component names to valid CSS selectors
  • Route Parameters: Create clean navigation paths
  • Search Terms: Normalize search queries for consistency
💡 Advanced Features:
  • Strict Mode: Extra restrictive character filtering
  • Multilingual Support: Handle international characters properly
  • Performance Optimized: Efficient regex patterns for speed
  • Configurable Output: Control every aspect of transformation
  • Safe Defaults: Sensible settings that work in most cases
  • Error Handling: Graceful handling of invalid inputs

Details

🔗 URL-Friendly Text Transformation
Slugify functions convert any text into clean, URL-safe strings perfect for web addresses, file names, and identifiers!

  • Core Functionality:
  • Character Normalization: Remove special characters and accents
  • Space Replacement: Convert spaces to hyphens or custom separators
  • Case Transformation: Lowercase conversion for consistency
  • Cleanup: Remove leading/trailing separators and extra whitespace
  • Multiple Implementations:
  • Basic Slugify: Simple, fast conversion with default settings
  • Advanced Slugify: Configurable options for complex requirements
  • Custom Separators: Use hyphens, underscores, or custom characters
  • Length Limiting: Truncate slugs to specific maximum lengths
  • Real-World Applications:
  • Blog URLs: Convert post titles to SEO-friendly URLs
  • File Names: Create safe file names from user input
  • Database Identifiers: Generate unique, readable record IDs
  • CSS Classes: Convert component names to valid CSS selectors
  • Route Parameters: Create clean navigation paths
  • Search Terms: Normalize search queries for consistency
💡 Advanced Features:
  • Strict Mode: Extra restrictive character filtering
  • Multilingual Support: Handle international characters properly
  • Performance Optimized: Efficient regex patterns for speed
  • Configurable Output: Control every aspect of transformation
  • Safe Defaults: Sensible settings that work in most cases
  • Error Handling: Graceful handling of invalid inputs

Category:String Manipulation
Functions:slugify, slugifyAdvanced
Concepts:
string manipulationregular expressionsURL formattingtext processing

Implementation

slugify

Time: O(n) | Space: O(n)
export function slugify(text: string, separator: string = '-'): string {
  if (typeof text !== 'string') return '';
  
  return text
    .toLowerCase()
    .trim()
    .replace(/[^\w\s-]/g, '') // Remove special characters
    .replace(/[\s_-]+/g, separator) // Replace spaces and underscores with separator
    .replace(new RegExp(`^${separator}+|${separator}+$`, 'g'), ''); // Remove leading/trailing separators
}

Usage Examples

Basic slug generation

slugify('Hello World!'); // 'hello-world'
slugify('My Blog Post Title'); // 'my-blog-post-title'