Извлечение почтовых адресов и чисел

LinuxBeginner
Практиковаться сейчас

Введение

В современном мире, основанном на данных, способность эффективно извлекать конкретную информацию из больших наборов данных имеет решающее значение. Боб, аналитик данных в быстрорастущей компании электронной коммерции, столкнулся с типичной задачей: ему нужно проанализировать обширные журналы (логи) клиентов, чтобы извлечь ценные сведения. Логи содержат смесь числовых данных (идентификаторы клиентов и суммы транзакций) и адресов электронной почты, а также другую вспомогательную информацию.

В этом задании вы окажетесь на месте Боба и используете регулярные выражения для извлечения и систематизации этих важных данных. Эта задача критически важна для управления взаимоотношениями с клиентами и анализа продаж компании. Освоив эти навыки, вы не только поможете Бобу, но и вооружитесь мощными методами манипуляции данными, применимыми в различных областях IT.

Извлечение данных

Бобу необходимо отделить числовые данные и адреса электронной почты от ежедневного файла логов компании. Ваша задача — использовать регулярные выражения для извлечения этой информации из файла /home/labex/project/data.

Задачи

  1. Найдите строки, начинающиеся с числа, и запишите результат в файл /home/labex/project/num.
  2. Найдите строки, соответствующие формату адреса электронной почты, и запишите результат в файл /home/labex/project/mail.

Требования

  1. Обратите внимание на формат адресов электронной почты, который может варьироваться (например, @gmail.com, @company.co.uk).
  2. Будьте осторожны при работе со специальными символами, особенно с точкой (.).
  3. Не изменяйте содержимое исходного файла data.

Пример

Содержимое файла num:

123
456
789
...

Содержимое файла mail:

2133131@gmail.com
3312313213@gmail.com
testfile@outlook.com
...

Резюме

Поздравляем! Вы успешно справились с заданием. Вы научились использовать регулярные выражения вместе с командой grep для извлечения конкретных данных из файла. Этот навык крайне важен для парсинга и анализа данных при выполнении различных задач программирования и системного администрирования. В реальных условиях это может значительно оптимизировать рабочие процессы обработки данных, экономя время и повышая точность аналитических проектов.

✨ Проверить решение и практиковаться