Зашедших прошу потестировать этот апплет. Первое текстовое поле предназначено для ввода описания шаблона для проверки входной строки. Второе поле - для ввода строки, которая будет проверяться. А третье - для вывода результата проверки.
Ниже приведено определение языка для описания шаблона…
Каждая строка на таком языке будет иметь вид:
<идентификатор> = <регулярное выражение>
Регулярными считаются следующие выражения:
Последний идентификатор задает множество допустимых ответов. Ранее введенные идентификаторы могут использоваться при определении текущего.
Например, если требуется считать правильным ответ, состоящий из числа 32, перед и после которого может следовать произвольное число пробелов, это можно сделать так:
Goal = {‘ ’}+‘32’+{‘ ’}
Другой пример:
Digit = (‘0’|‘1’|‘2’|‘3’|‘4’|‘5’|‘6’|‘7’|‘8’|‘9’)
Integer = (‘-’|‘+’|‘’)+Digit+{Digit}
Goal = {‘ ’}+Integer+{‘ ’}