作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以按照以下规则验证英国驾驶执照?
- Digit 1–5: Letters A-Z or 9's
- Digit 6-11: Numbers 0-9
- Digit 12–13: Letters A-Z or 9's
- Digit 14: Number 0-9
- Digit 15–16: Two letters A-Z
到目前为止,我有以下内容,但它不起作用:
var regex = /^[A-Z0-9]{5}\d[0156]\d([0][1-9]|[12]\d|3[01])\d[A-Z0-9]{3}[A-Z]{2}$/
以下应该通过:
[
'FARME100165AB5EW',
'MAR99740614BC2TL',
'MARTI740614A92TL',
'MARTI740614992TL',
'99999740614992TL'
].forEach(drivingLicenceNumber => regex.test(drivingLicenceNumber)
只有数组的第一个元素通过。
下面应该会失败
[
'1FARM382940AZ9AZ',
'F2ARM382940AZ9AZ',
'FA3RM382940AZ9AZ',
'FAR4M382940AZ9AZ',
'FARM5382940AZ9AZ'
].forEach(drivingLicenceNumber => !regx.text(drivingLicenceNumber)
最佳答案
这应该有效:
^[A-Z9]{5}\d{6}[A-Z9]{2}\d[A-Z]{2}$
解释:
[A-Z9]{5}
数字 1-5:字母 A-Z 或 9\d{6}
数字 6-11:数字 0-9[A-Z9]{2}
数字 12–13:字母 A-Z 或 9\d
第 14 位:数字 0-9[A-Z]{2}
数字 15–16:两个字母 A-Zvar regex = /^^[A-Z9]{5}\d{6}[A-Z9]{2}\d[A-Z]{2}$$/
console.log('all pass');
[
'FARME100165AB5EW',
'MAR99740614BC2TL',
'MARTI740614A92TL',
'MARTI740614992TL',
'99999740614992TL'
].forEach(drivingLicenceNumber => {
console.log(drivingLicenceNumber, regex.test(drivingLicenceNumber));
});
console.log('all fail');
[
'1FARM382940AZ9AZ',
'F2ARM382940AZ9AZ',
'FA3RM382940AZ9AZ',
'FAR4M382940AZ9AZ',
'FARM5382940AZ9AZ'
].forEach(drivingLicenceNumber => {
console.log(drivingLicenceNumber, regex.test(drivingLicenceNumber));
});
关于javascript - 在javascript中验证英国驾驶执照正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45493570/
我是一名优秀的程序员,十分优秀!