Вопрос

Я хочу GSUB все символы в строке, которая не является буквами и заменить на «#». Я думаю, что мне нужно регулярное выражение, которое происходит что -то вроде: «GSUB (), когда эта регуляция не совпадает».

Любые идеи?

Это было полезно?

Решение

Смотри, ма, нет, не зарегистрировано ...

str.tr( '^A-Za-z', '#' )

Другие советы

str.gsub(/[^a-zA-Z]/, '#')

А ^ означает не совпадает

Конечно, вы можете использовать отрицание класса символов:

"aBc$%^".gsub(/[^A-Za-z]/, '#') => "aBc###"

Пытаться это на кодепаде:

puts "kjhdfuy37685682#$$%@dfjahf".gsub(/[^a-z]/i, '#')

Слова Считаться

все персонаж с ... заменить '#' str.gsub(/[^a-zA-Z]+/, '#')

каждый персонаж ... заменить на '#' str.gsub(/[^a-zA-Z]/, '#')

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top