Файл: Отчет по практической работе 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. Далее приведены основные логические конструкции для задания шаблона. Если в строке, проверяемой на соответствие, необходимо, чтобы в какой-либо позиции находился один из символов некоторого символьного набора, то такой набор (класс символов) можно объявить, используя одну из конструкций
Постановка задачи
-
Написать регулярное выражение, определяющее является ли данная строка строкой "abcdefghijklmnopqrstuv18340" или нет.
– пример правильных выражений: abcdefghijklmnopqrstuv18340.
– пример неправильных выражений: abcdefghijklmnoasdfasdpqrstuv18340.
-
Написать регулярное выражение, определяющее является ли заданная строка правильным MAC-адресом.
– пример правильных выражений: aE:dC:cA:56:76:54.
– пример неправильных выражений: 01:23:45:67:89:Az.
-
Есть текст со списками цен. Извлечь из него цены в 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 задание
Вывод
В результате выполнения практической работы были приобретены навыки по работе со строками и регулярными выражениями.