🛠️ToolsShed

Slug Generator

Converta qualquer texto em um slug limpo e compatível com URL.

O Gerador de Slug converte um título ou frase em um slug amigável para URL — uma string em minúsculas, separada por hífens, sem caracteres especiais ou espaços. Por exemplo, "Minha Primeira Postagem do Blog!" torna-se "minha-primeira-postagem-do-blog".

Digite seu título ou frase e a ferramenta gera instantaneamente um slug limpo. O processo de conversão remove acentos e diacríticos, converte todos os caracteres para minúsculas, substitui espaços e pontuação por hífens, remove os caracteres restantes que não são alfanuméricos ou hífens, e colapsa múltiplos hífens consecutivos em um.

Slugs bem elaborados melhoram o SEO porque tornam sua URL legível e relevante para o tópico da página. Os mecanismos de busca tratam as palavras na URL como um sinal de relevância. Mantenha os slugs concisos — omita artigos e preposições quando possível.

Perguntas Frequentes

Implementação de Código

import re
import unicodedata

def slugify(text: str, separator: str = "-") -> str:
    """Convert text to a URL-friendly slug."""
    # Normalize unicode: decompose accented chars (é → e + combining accent)
    text = unicodedata.normalize("NFKD", text)
    # Encode to ASCII bytes, ignore errors (drops non-ASCII)
    text = text.encode("ascii", "ignore").decode("ascii")
    # Lowercase
    text = text.lower()
    # Replace any non-alphanumeric characters with the separator
    text = re.sub(r"[^a-z0-9]+", separator, text)
    # Strip leading/trailing separators
    text = text.strip(separator)
    return text

# Examples
print(slugify("Hello, World!"))              # hello-world
print(slugify("  Multiple   Spaces  "))      # multiple-spaces
print(slugify("Héllo Wörld"))                # hello-world
print(slugify("C++ is awesome!"))            # c-is-awesome
print(slugify("Blog Post #42"))              # blog-post-42
print(slugify("Hello World", "_"))           # hello_world (underscore)

# For Python web frameworks like Django, use built-in slugify:
# from django.utils.text import slugify
# slugify("Hello, World!")  # "hello-world"

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.