使用 asp.net mvc 中的数据注释否定信用卡号 RegEx 匹配

Negate credit card number RegEx match using Data annotations in asp.net mvc

[RegularExpression(@"^(?:4[0-9]{12}(?:[0-9]{3})?|[25][1-7][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$",ErrorMessage ="Name cannot contain credit card number")]
[Required(ErrorMessage = "Card holder name is required")]
public string CardHolderName { get; set; }

它按预期检测到信用卡,但我需要它做相反的事情。如果它检测到信用卡说 "name cannot contain a credit card numbers".

,我需要它给我一个警告

你可以试试这个正则表达式。如果你想做与上面提到的正则表达式相反的事情。

^(?!(?:4[0-9]{12}(?:[0-9]{3})?|[25][1-7][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$)