Подтвердить что ты не робот

Простое регулярное выражение - замените подчеркивание пробелом

Эй, я пишу свое первое приложение Rails, и я пытаюсь заменить символы подчеркивания на имя входящего идентификатора пробелами, например:

до: test_string

после: тестовая строка

Как я могу это сделать? Извините, если это немного глупый вопрос, я не очень хорошо знаком с регулярными выражениями...

4b9b3361

Ответ 1

Упс, я на самом деле работал, просто забыл обновить имя переменной: P

Я использовал это:

@id = params[:id]
@title = @id.gsub("_", " ")

Ответ 2

str.gsub!(/_/, ' ')

gsub означает "глобальная подстановка", и восклицание означает, что оно изменит сама строку, а не просто вернет замещенную строку.

Вы также можете сделать это без регулярных выражений с помощью String#tr!:

str.tr!('_', ' ')

Ответ 3

На рельсах вы можете использовать упрощенный метод .humanize и ruby ​​.downcase, но будьте осторожны так как он также разделяет любую финальную строку "_id" (в большинстве случаев это именно то, что вам нужно, даже заглавную первую букву)

'text_string_id'.humanize.downcase
 => "text string" 

Ответ 4

Использование split и join в рельсах

"test_string".split('_'). join ('')