====
Ключевая фраза1 23434
Ключевая +фраза2 5435
...
====
В данном случае, нам необходимо избавиться от заключительных числовых значений (количество запросов данной ключевой фразы в месяц), а также заодно убрать из строчных значений ключевых фраз символ "+". Если бы строк в выдаче было не очень много, можно было бы обойтись и ручным трудом, но, в любом случае, каждый понимает, что ручной труд - это плохо и негодно :) В общем, будем это дело автоматизировать. Попробуем написать небольшой скрипт на Ruby.
Итак, что нам нужно сделать. Во-первых, прочитать входной файл, затем обработать все его строки, выбросив из них всё лишнее, и на заключительном этапе записать полученный результат в файл вывода. Приступаем.
Чтение входного файла в строку:s = ''
File.open('input.txt',"r") do |f|
s = f.read
end
Преобразование строки s в массив arr (в качестве разделителей выступает комбинация символов "перевод строки" + "возврат каретки"):
arr = s.split("\n\r")
Собственно, обработка массива arr (удаление хвостовых числовых значений и символов '+'):
arr = arr.map do |el|
el.gsub!('+','')
el.gsub!(/(\s|\t)+\d+$/,'')
end
Ну и финальная часть - запись обработанного массива arr в файл вывода:
File.open('output.txt',"w") do |f|
f.write(arr.join("\n\r"))
end
Предварительно сам массив "склеивается" через те же самые символы перевода строки и возврата каретки, которые мы убирали в самом начале.
Вот и всё. Как видите, ничего сложного здесь нет. Не исключено, конечно, что этот код не оптимален, но в качестве стартового учебного примера, мне кажется, вполне сгодится.
Комментариев нет:
Отправить комментарий