Я пытаюсь создать поведение, подобное постоянной ссылке, для некоторых заголовков статей, и я не хочу добавлять новое поле базы данных для постоянной ссылки. Поэтому я решил написать помощник, который будет преобразовывать название моей статьи из:
"O "focoasă" a pornit cruciada, împotriva bărbaţilor zgârciţi" to "o-focoasa-a-pornit-cruciada-impotriva-barbatilor-zgarciti".
Пока я выяснил, как заменить пробелы дефисами и удалить другие специальные символы (кроме -), используя:
title.gsub(/\s/, "-").gsub(/[^\w-]/, '').downcase
Мне интересно, есть ли другой способ заменить символ конкретным другим символом только из одного вызова метода .gsub, поэтому мне не придется связывать методы title.gsub("ă", "a") для всех Спецсимволы UTF-8 моей локализации.
Я думал создать хэш со всеми специальными символами и их аналогами, но я еще не понял, как использовать переменные с регулярными выражениями.
Я искал что-то вроде:
title.gsub(/\s/, "-").gsub(*replace character goes here*).gsub(/[^\w-]/, '').downcase
Спасибо!