ECMAScript | Непустые Диапазоны Классов (NonemptyClassRanges) | Регулярные выражения (Regular Expression)

Производство NonemptyClassRanges :: ClassAtom оценивается следующим образом:

1. Верните набор символов CharSet, который является результатом оценки ClassAtom.

Производство NonemptyClassRanges :: ClassAtom NonemptyClassRangesNoDash оценивается следующим образом:

1. Оцените ClassAtom, чтобы получить CharSet A.
2. Оцените NonemptyClassRangesNoDash, чтобы получить CharSet B.
3. Верните объединение CharSets A и B.

Производство NonemptyClassRanges :: ClassAtom ClassAtom ClassRanges оценивается следующим образом:

1. Оцените первый ClassAtom, чтобы получить CharSet A.
2. Оцените второй ClassAtom, чтобы получить CharSet B.
3. Оцените ClassRanges, чтобы получить CharSet C.
4. Пусть D будет! CharacterRange(A, B).
5. Верните объединение D и C.

CharacterRange ( A, B )

Абстрактная операция CharacterRange (Диапазон символов) принимает аргументы A (CharSet) и B (CharSet). При вызове она выполняет следующие шаги:

1. Утверждено: A и B содержат ровно по одному символу.
2. Пусть a будет единственным символом в CharSet A.
3. Пусть b - единственный символ в CharSet B.
4. Пусть i будет символьным значением символа a.
5. Пусть j будет символьным значением символа b.
6. Утверждено: ij.
7. Верните CharSet, содержащий все символы со значением символа больше или равным i и меньше или равным j.

Информационные ссылки

Предыдущий раздел — Диапазоны Классов

Стандарт ECMAScript — Раздел «NonemptyClassRanges» — https://tc39.es/ecma262/#sec-nonemptyclassranges

ECMAScript | Условные обозначения

Поделись записью