
比如代码里出现了这个身份证的正则(网上搜的,写的不太好)
const idcardPattern = /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/ 现在我要检查这个正则写的对不对,有点反人类了...
我甚至很晚才知道正则表达式可以通过(?#这种方式)写注释...
1 xream 2019-09-11 18:07:12 +08:00 https://www.debuggex.com/ 可视化的工具很多 |
2 zhujinliang 2019-09-11 18:28:46 +08:00 via iPhone 我要是写的话正则用拼字符串一行一行的写,注释就是代码注释 |
3 stillyu 2019-09-11 19:02:37 +08:00 via iPhone 身份证号用最后一位数的计算算法来验证,不是更好 |
4 uTOmOuk3L6sb4MSI 2019-09-11 19:11:33 +08:00 via iPhone 一般只写用途吧 |
5 mcfog 2019-09-11 19:11:55 +08:00 我选择删掉正则用普通代码实现,而不是给正则加注释来假装这东西是可以被维护的 |
6 amazingrise 2019-09-11 19:17:07 +08:00 via Android 推荐 regexr.com |