Regex, чтобы отклонить, если все числа и отклонить двоеточие - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь использовать регулярное выражение

  • отклонить, если введены все числа
  • принять буквенно-числовой
  • отклонить двоеточие ':'

Я пытался,

ng-pattern="/[^0-9]/" и

ng-pattern="/[^0-9] [^:]*$/" 

, например,

" Block1 Grand-street USA " долженбыть принятым

" 111132322 " должно быть отклонено

" Блок 1 grand: " должно быть отклонено

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Согласно комментариям, вы хотите сопоставить любой символ, кроме двоеточия.

Это должно сделать работу:

ng-pattern="/^(?!\d+$)[^:]+$/"
0 голосов
/ 10 октября 2018

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

ng-pattern="/^(?!\d+$)[^:]+$/"

См. Демонстрационную версию regex .

Чтобы запретить только : в конце строки, используйте

ng-pattern="/^(?!\d+$)(?:.*[^:])?$/"

См. еще одну демонстрацию регулярных выражений

Шаблон соответствует

  • ^ - начало строки
  • (?!\d+$)- без 1+ цифр до конца строки
  • [^:]+ - один или несколько символов, отличных от :
  • (?:.*[^:])? - необязательная группа без захвата, которая соответствует 1 или0 вхождений
    • .* - любые 0+ символов, кроме символов разрыва строки, как можно больше
    • [^:] - любой символ, кроме : (если вы не хотитедля соответствия пустой строке замените (?: и )?)
  • $ - конец строки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...