2016-05-30 2 views
1
[RegularExpression("/^[a-z,.'-]{2,15}$/i", ErrorMessage = "bla bla'")] 

У меня есть текстовое поле ввода регулируется с этим регулярным выражением и, например, «ASD» должно быть в порядке, но его не видимо ... бла-бла Показано! Требуемая аннотацию данные работает Собственость но этого нет. Что мне не хватает?MVC проверки регулярных выражений не работает

+1

Вы должны передавать только строку, а не объект регулярного выражения в виде строки. Используйте ''^[A-Za-z, .'-] {2,15} $ "' –

+0

Так как спасибо! – user6321125

+1

Очень хорошее размещение дефиса, BTW. Это не должно быть экранировано в конце класса символов. –

ответ

3

Вы должны передавать только строку, а не объект регулярного выражения в виде строки.

[RegularExpression("^[A-Za-z,.'-]{2,15}$", ErrorMessage = "bla bla'")] 

/.../ являются регулярными выражениями разделителей и /i является регулярным выражение чувствителен к регистру модификатора. Это называется буквенным обозначением регулярного выражения в JavaScript. В ASP.NET вы должны пройти только шаблон , который находится между разделителями /.../. Кроме того, вы не можете использовать модификаторы regex, но в этом случае вы можете просто добавить A-Z в класс символов.

Смежные вопросы