Поиск и замена текста

Ruby:
Поиск и замена текста

Как это сделать:

В Ruby это легко. Используйте gsub для глобальной замены текста, или sub для одного случая. Вот быстрый пример:

# Исходная строка
phrase = "Hello, world!"

# Замените 'world' на 'Ruby'
puts phrase.gsub('world', 'Ruby')
# => Hello, Ruby!

# Замените только первое вхождение 'l'
puts phrase.sub('l', '7')
# => He7lo, world!

Выходные данные? Первый принт показывает "Hello, Ruby!", второй дает "He7lo, world!".

Подробнее

Методы gsub и sub существуют в Ruby с его первых дней, отражая концепцию замены из более старых языков, таких как Perl. Альтернативы? Конечно, вы могли бы использовать регулярные выражения для более сложных шаблонов, или даже соединить split и join, если чувствуете в себе творческую жилку.

Что круто, так это возможность Ruby использовать блоки с gsub. Вместо простого поиска и замены вы можете сделать серьезную работу внутри этого блока:

# Сделать каждое слово с заглавной буквы
puts "make me pretty".gsub(/\b\w/) { |match| match.upcase }
# => Make Me Pretty

Зачем это нужно? Для начала, использование регулярных выражений с gsub позволяет вам бороться с нюансированными случаями, когда вам нужно больше утонченности, чем простое ‘найди это, замени на то’.

Смотрите также

Оттачивайте свои навыки - окунитесь в документацию или ознакомьтесь с этими ресурсами:

Поняли? Отлично. Теперь идите играть со строками.