車牌號校驗正則表達式


一、車牌號校驗規則

1.常規車牌號:僅允許以漢字開頭,后面可錄入六個字符,由大寫英文字母和阿拉伯數字組成。如:粵B12345;
2.最后一個為漢字的車牌:允許以漢字開頭,后面可錄入六個字符,前五位字符,由大寫英文字母和阿拉伯數字組成,而最后一個字符為漢字,漢字包括“掛”、“學”、“警”、“港”、“澳”。如:粵Z1234港。
3.新軍車牌:以兩位為大寫英文字母開頭,后面以5位阿拉伯數字組成。如:BA12345。

 

二、正則表達式

^[京津滬渝冀豫雲遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陝吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學警港澳]{1}$

 

三、使用示例

1. Oracle PL/SQL

  create or replace  function is_vehicle_number(p_vehicle_number in varchar2) return number
  is
    v_result number;
    v_express varchar2(600);
  begin
    -- 默認0,表示不正確
    v_result := 0;
    
if length(p_vehicle_number) = 7 then v_express :
= '^[京津滬渝冀豫雲遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陝吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學警港澳]{1}$'; if regexp_like(p_vehicle_number, v_express) then v_result := 1; end if;
end if;
return v_result; end;

2. Javascript

  function isVehicleNumber(vehicleNumber) {
var result = false;
if (vehicleNumber.length == 7){
var express = /^[京津滬渝冀豫雲遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陝吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學警港澳]{1}$/; result = express.test(vehicleNumber);
}
return result; }

3.C#

public static bool IsVehicleNumber(string vehicleNumber)
{
bool result = false;
if (vehicleNumber.Length == 7){
string express = @"^[京津滬渝冀豫雲遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陝吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學警港澳]{1}$"; result = Regex.IsMatch(vehicleNumber, express);
}
return result; }

 

三、參考資料
js校驗車牌號
車牌的特殊牌照

 

四、版本更新說明

  2016-11-25:去掉警車號牌規則,增加長度驗證。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM