正则表达式不是SSN
本文关键字:SSN 正则表达式 | 更新日期: 2023-09-27 18:13:29
我在c#中有以下正则表达式代码。
^((?!('d{3}-?'d{2}-?'d{4})).)*$")
我唯一关心的是文本框与ssn不匹配。[###-##-####]我如何使正则表达式匹配一切除了SSN?
^(?!('d{3}-?'d{2}-?'d{4})$).*
这对我在http://regexpal.com/
为什么不先做一个SSN的正则表达式,然后再做一个if (! m.Success)
呢?
1)最重要的是,它将更容易为其他人阅读。即使没有见过很多正则表达式的人也能读懂直接匹配的ssn正则表达式。当然,有时候那个"别人"就是六个月后的你。
2)其次,一个正则表达式越复杂,它就越有可能匹配一些你意想不到的东西。出于这个原因,我认为如果可以的话,最好使用更简单的正则表达式。