Файл: Отчет по практической работе 1718 по дисциплине Программирование на языке Java.docx

ВУЗ: Не указан

Категория: Отчеты по практике

Дисциплина: Не указана

Добавлен: 19.03.2024

Просмотров: 10

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.



МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное учреждение высшего образования

"МИРЭА - Российский технологический университет"
РТУ МИРЭА


Институт информационных технологий (ИТ)

Кафедра инструментального и прикладного программного обсепечения(ИиППО)





ОТЧЕТ

ПО ПРАКТИЧЕСКОЙ РАБОТЕ №17-18

по дисциплине




«Программирование на языке Java»




Выполнил студент группы ИКБО-16-21




Принял преподаватель кафедры ИиППО

Романченко А.Е.


Практические работы выполнены

«»2022г.





«Зачтено»


«»2022 г.





Москва 2022
Теоретическое введение

Регулярные выражения – эта система обработки текста, основанная на специальной системе записи образцов для поиска. Образец (pattern), задающий правило поиска, по-русски также иногда называют «шаблоном», «маской». Сейчас регулярные выражения используются многими текстовыми редакторами и утилитами для поиска и изменения текста на основе выбранных правил. Язык программирования Java также поддерживает регулярные выражения для работы со строками.


Основными классами для работы с регулярные выражения являются класс java.util.regex.Pattern и класс java.util.regex.Matcher.

Класс java.util.regex.Pattern применяется для определения регулярных выражений, для которого ищется соответствие в строке, файле или другом объекте, представляющем собой некоторую последовательность символов. Для определения шаблона применяются специальные синтаксические конструкции. О каждом соответствии можно получить больше информации с помощью класса java.util.regex.Matcher. Далее приведены основные логические конструкции для задания шаблона. Если в строке, проверяемой на соответствие, необходимо, чтобы в какой-либо позиции находился один из символов некоторого символьного набора, то такой набор (класс символов) можно объявить, используя одну из конструкций

Постановка задачи

  1. Написать регулярное выражение, определяющее является ли данная строка строкой "abcdefghijklmnopqrstuv18340" или нет.

– пример правильных выражений: abcdefghijklmnopqrstuv18340.

– пример неправильных выражений: abcdefghijklmnoasdfasdpqrstuv18340.

  1. Написать регулярное выражение, определяющее является ли заданная строка правильным MAC-адресом.

– пример правильных выражений: aE:dC:cA:56:76:54.

– пример неправильных выражений: 01:23:45:67:89:Az.

  1. Есть текст со списками цен. Извлечь из него цены в USD, RUR, EU.

– пример правильных выражений: 23.78 USD.

– пример неправильных выражений: 22 UDD, 0.002 USD.

Задание__1'>Программный код

Задание 1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
public static void main(String[] args) {
String regex = "abcdefghijklmnopqrstuv18340";
Pattern p = Pattern.compile(regex);
Scanner in = new Scanner(System.in);
String input = in.nextLine();
Matcher m = p.matcher(input);
if(m.matches())
{
System.out.println("It's");
}
else{ System.out.println("It isn't"); }
}
}

Задание 2

import java.util.regex.Pattern;

public class Main {
public static void main(String[] args) {
String regex = "^[a-z][A-Z]:[a-z][A-Z]:[a-z][A-Z]:\\d{2}:\\d{2}:\\d{2}$";
Pattern p = Pattern.compile(regex);
String t = "aE:dC:cA:56:76:54";
String t1 = "01:23:45:67:89:Az";

Matcher m = p.matcher(t);
Matcher m1 = p.matcher(t1);
System.out.println(m.matches());
System.out.println(m1.matches());

}
}

Задание 3

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
public static void main(String[] args) {
String regex = "\\d+\\.\\d{1,2} (USD)|(RUR)|(EU)";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher("sfasf 23.87 USD sadf");
Matcher m1 = p.matcher("sfasf 22 USD sadf");
Matcher m2 = p.matcher("sfasf 0.002 USD sadf");
System.out.println(m.find());
System.out.println(m1.find());
System.out.println(m2.find());
}
}

Вывод программы

Задание 1



Рисунок 1. Вывод программы 1 задание



Рисунок 2. Вывод программы 1 задание

Задание 2



Рисунок 3. Вывод программы 2 задание

Задание 3



Рисунок 4. Вывод программы 3 задание

Вывод

В результате выполнения практической работы были приобретены навыки по работе со строками и регулярными выражениями.