Regex проверяет ниже 32 символов Unicode, используя Angular - PullRequest
2 голосов
/ 07 июля 2019

Я хочу, чтобы регулярное выражение для оператора ниже удовлетворяло условию в поле ввода углового материала, имеющего атрибут образца

"Обратите внимание, что строки НЕ ДОЛЖНЫ превышать 1 МБ (1024 * 1024 символа). Строки НЕ ДОЛЖНЫ содержать символьные точки Unicode ниже 32, за исключением u0009 (горизонтальная табуляция), u0010 (возврат каретки) и u0013 (строка Можно использовать пробелы в начале и в конце, но СЛЕДУЕТ удалять при использовании формата XML. Примечание: это означает, что строка, состоящая только из пробела, может быть обрезана до нуля, что будет рассматриваться как недопустимое значение элемента. Поэтому строки ДОЛЖЕН всегда содержать контент без пробелов"

Я ожидаю, что любая строка с кодом Unicode выше 32 символов и словами с пробелом

Я пытался с регулярным выражением "^ ((?! [\ U0001- \ u0008] | [\ u000B- \ u000C] | [\ u000E- \ u0020]).) * $", Но не повезло

1 Ответ

0 голосов
/ 12 июля 2019

Вы можете использовать

pattern="[ -\uFFFF\x0A\x0D\x09]*"

Он будет "преобразован" в ^(?:[ -\uFFFF\x0A\x0D\x09]*)$ регулярное выражение и будет соответствовать

  • ^ - начало строки
  • [ -\uFFFF\x0A\x0D\x09]* - 0 или более символов из пробела до последнего символа Unicode в таблице Unicode, а также LF (\x0A), CR (\x0D) и TAB (\x09)
  • $ конец строки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...