Средство тестирования регулярных выражений (проект) — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Новая страница, с помощью формы Новый_проект)
 
Строка 10: Строка 10:
  
 
=== Что это за проект? ===
 
=== Что это за проект? ===
1
+
==== Регулярные выражения ====
 +
 
 +
Регулярные выражения – это формальный язык для описания шаблона поиска и осуществления  замен в текстах.
 +
 
 +
Пример: регулярное выражение (в синтаксисе Qt)
 +
 
 +
  ((http|https)://)?((www\.)?[a-zA-Z0-9\-_]+\.ru)(/[a-zA-Z0-9\-_/]+)?
 +
 
 +
определяет множество URL веб-страниц в зоне «.ru», которые находятся только на доменах второго уровня, возможно с префиксом «www.». Результатом упешного поиска является список строк, первая из которых является найденной в тексте подстрокой, а остальные – отдельные значимые фрагменты этой подстроки, которые в регулярном выражении задаются круглыми скобками. Регулярные выражения повсеместно используются во всех задачах, так или иначе связанных с обработкой текста.
 +
 
 +
==== Постановка задачи ====
 +
Требуется реализовать инструмент (кроссплатформенный, то есть Windows+Linux) для тестирования регулярных выражений. В качестве примера реализации можно смотреть kregexpeditor из состава KDE3 (в любом старом дистрибутиве Linux середины 2000-х годов, например AltLinux 5.0 или openSUSE версии до 11.2).
 +
 
 +
Окно программы, полученной в результате выполнения проекта, содержит строку редактирования регулярного выражения и область текста для тестирования. При вводе строки регулярного выражения, выполняется поиск сопоставлений в тексте, при этом найденные сопоставления подчеркиваются, а отдельные их фрагменты выделяются разными цветами.
 +
 
 +
Программа должна выполнять простую проверку корректности строки регулярного выражения и диагностировать следующие синтаксические ошибки: 1) непарные скобки; 2) некорректные управляющие символы.
  
 
=== Чему вы научитесь? ===
 
=== Чему вы научитесь? ===

Версия 14:42, 21 ноября 2014

Ментор Яковлев Виктор
Учебный семестр Весна 2015
Учебный курс 1-й курс



Что это за проект?

Регулярные выражения

Регулярные выражения – это формальный язык для описания шаблона поиска и осуществления замен в текстах.

Пример: регулярное выражение (в синтаксисе Qt)

 ((http|https)://)?((www\.)?[a-zA-Z0-9\-_]+\.ru)(/[a-zA-Z0-9\-_/]+)?

определяет множество URL веб-страниц в зоне «.ru», которые находятся только на доменах второго уровня, возможно с префиксом «www.». Результатом упешного поиска является список строк, первая из которых является найденной в тексте подстрокой, а остальные – отдельные значимые фрагменты этой подстроки, которые в регулярном выражении задаются круглыми скобками. Регулярные выражения повсеместно используются во всех задачах, так или иначе связанных с обработкой текста.

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

Требуется реализовать инструмент (кроссплатформенный, то есть Windows+Linux) для тестирования регулярных выражений. В качестве примера реализации можно смотреть kregexpeditor из состава KDE3 (в любом старом дистрибутиве Linux середины 2000-х годов, например AltLinux 5.0 или openSUSE версии до 11.2).

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

Программа должна выполнять простую проверку корректности строки регулярного выражения и диагностировать следующие синтаксические ошибки: 1) непарные скобки; 2) некорректные управляющие символы.

Чему вы научитесь?

2

Какие начальные требования?

3

Какие будут использоваться технологии?

4

Темы вводных занятий

5

Направления развития

6

Критерии оценки

7