PHP 正則驗證車牌號 判斷車牌號是否合法

2021-10-06 07:13:06 字數 1309 閱讀 4367

/*

* notes: 判斷車牌號是否合法

* @param: $license 車牌號

* return bool true:合法 false:不合法

*/public function iscarlicense($license)

//匹配民用車牌和使館車牌

//判斷標準

//1.第一位為漢子省份縮寫

//2.第二位為大寫字母城市編碼

//3.後面是5位僅含字母和數字的組合

$regular = "/[京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂瓊川貴雲渝藏陝甘青寧新使][a-z][0-9a-za-z]$/u";

preg_match($regular, $license, $match);

if (isset($match[0]))

//匹配特種車牌(掛,警,學,領,港,澳)

$regular = '/[京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂瓊川貴雲渝藏陝甘青寧新][a-z][0-9a-za-z][掛警學領港澳]$/u';

preg_match($regular, $license, $match);

if (isset($match[0]))

//匹配武警車牌

$regular = '/^wj[京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂瓊川貴雲渝藏陝甘青寧新]?[0-9a-za-z]$/ui';

preg_match($regular, $license, $match);

if (isset($match[0]))

//匹配軍牌

$regular = "/[a-z][0-9]$/";

preg_match($regular, $license, $match);

if (isset($match[0]))

//匹配新能源車輛6位車牌

//小型新能源車

$regular = "/[京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂瓊川貴雲渝藏陝甘青寧新][a-z][df][0-9a-za-z]$/u";

preg_match($regular, $license, $match);

if (isset($match[0]))

//大型新能源車

$regular = "/[京津冀晉蒙遼吉黑滬蘇浙皖閩贛魯豫鄂湘粵桂瓊川貴雲渝藏陝甘青寧新][a-z][0-9a-za-z][df]$/u";

preg_match($regular, $license, $match);

if (isset($match[0]))

return false;

}

車牌號問題

大家都知道,一輛汽車上路前先要去交警部門申領汽車號牌,號牌由兩部分組成,以點字元 為分隔符,點字元 前部分是省區標識部分,點字元 後部分是五位車牌號,為了能夠準確識別車牌,有些容易引起混淆的字元被限制使用,我們假設在某乙個車牌系統中有如下限制 1 車牌是由數字和大寫字母組成。2 考慮到字元 0 和字...

車牌號問題

大家都知道,一輛汽車上路前先要去交警部門申領汽車號牌,號牌由兩部分組成,以點字元 為分隔符,點字元 前部分是省區標識部分,點字元 後部分是五位車牌號,為了能夠準確識別車牌,有些容易引起混淆的字元被限制使用,我們假設在某乙個車牌系統中有如下限制 1 車牌是由數字和大寫字母組成。2 考慮到字元 0 和字...

車牌號問題

大家都知道,一輛汽車上路前先要去交警部門申領汽車號牌,號牌由兩部分組成,以點字元 為分隔符,點字元 前部分是省區標識部分,點字元 後部分是五位車牌號,為了能夠準確識別車牌,有些容易引起混淆的字元被限制使用,我們假設在某乙個車牌系統中有如下限制 1 車牌是由數字和大寫字母組成。2 考慮到字元 0 和字...