Created
December 2, 2024 12:56
-
-
Save rallisf1/4efe14793e63c5539f07ed726da302ab to your computer and use it in GitHub Desktop.
Regex Validation for Greek License Plates
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/(ΜΕ[\s|-]?\d{5})|(ΑΜ[\s|-]?\d{5})|(ΔΣ[\s|-]?\d{2,3}[\s|-]?\d{0,3})|(ΑΟ[\s|-]?\d{3}[\s|-]\d{2})|(Α\s?[Α|Ο][\s|-]?\d{3})|(Ρ[\s|-]?\d{5})|(Τ[Α|Χ][\s|-]?\d{5})|(ΔΟΚ[\s|-]?\d{3,5})|(ΑΝΠ[\s|-]?\d{4})|(ΙΟ[\s|-]?\d{5})|([Π|Ε|Λ|Ξ][Σ|Α|Ν][\s|-]?\d{4,6})|([Α|Β|Ε|Ζ|Η|Ι|Κ|Μ|Ν|Ν|Ο|Ρ|Τ|Υ|Χ]{3}[\s|-]?\d{1,4})|([Α|Β|Ε|Ζ|Η|Ι|Κ|Μ|Ν|Ν|Ο|Ρ|Τ|Υ|Χ]{2}[\s|-]?\d{4})/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Πρώτα αφαιρούμε τις τελείες από το string μας και κάνουμε μετατροπή τους λατινικούς σε ελληνικούς χαρακτήρες.
Ο σκοπός αυτού του regex είναι να κάνει input validation, όχι αναγώριση. Η αναγνώριση κάποιων τύπων οχημάτων μέσω των match groups είναι "κερασάκι στην τούρτα". Αναγνώριση πρέπει να κάνετε στον κώδικα σας.
group 1: ΜΗΧΑΝΗΜΑΤΑ ΕΡΓΩΝ
ΜΕ[\s|-]?\d{5}
group 2: ΑΓΡΟΤΙΚΑ ΜΗΧΑΝΗΜΑΤΑ
ΑΜ[\s|-]?\d{5}
group 3: ΔΙΠΛΩΜΑΤΙΚΕΣ
ΔΣ[\s|-]?\d{2,3}[\s|-]?\d{0,3}
group 4: ΑΓΙΟΥ ΟΡΟΥΣ
ΑΟ[\s|-]?\d{3}[\s|-]\d{2}
group 5: ΑΓΙΟΥ ΟΡΟΥΣ (ΠΑΛΑΙΕΣ), ΑΡΧΙΕΠΙΣΚΟΠΗΣ ΑΘΗΝΩΝ
Α\s?[Α|Ο][\s|-]?\d{3}
group 6: ΡΥΜΟΥΛΚΟΜΕΝΑ Δ.Χ.
Ρ[\s|-]?\d{5}
group 7: ΡΥΜΟΥΛΚΟΜΕΝΑ Ι.Χ.
Τ[Α|Χ][\s|-]?\d{5}
group 8: ΔΟΚΙΜΑΣΤΙΚΕΣ
ΔΟΚ[\s|-]?\d{3,5}
group 9: ΑΝΑΠΗΡΩΝ ΠΟΛΕΜΟΥ
ΑΝΠ[\s|-]?\d{4}
group 10: ΙΣΤΟΡΙΚΕΣ (2023+)
ΙΟ[\s|-]?\d{5}
group 11: ΣΩΜΑΤΑ ΑΣΦΑΛΕΙΑΣ, ΣΤΡΑΤΟΣ, ΞΕΝΕΣ ΑΠΟΣΤΟΛΕΣ
[Π|Ε|Λ|Ξ][Σ|Α|Ν][\s|-]?\d{4,6}
group 12: ΑΥΤΟΚΙΝΗΤΑ, ΜΟΤΟΣΙΚΛΕΤΕΣ, ΤΑΞΙ, (ΗΜΙ)ΦΟΡΤΗΓΑ
[Α|Β|Ε|Ζ|Η|Ι|Κ|Μ|Ν|Ν|Ο|Ρ|Τ|Υ|Χ]{3}[\s|-]?\d{1,4}
group 13: ΑΥΤΟΚΙΝΗΤΑ, ΜΟΤΟΣΙΚΛΕΤΕΣ (1972-1984)
[Α|Β|Ε|Ζ|Η|Ι|Κ|Μ|Ν|Ν|Ο|Ρ|Τ|Υ|Χ]{2}[\s|-]?\d{4}
Δεν υποστηρίζονται: Λοιπές εκκλησιαστικές πινακίνες, Προέδρου της Κυβερνήσεως, πινακίδες παλαιότερες του 1972
Πηγή: Wikipedia και 2 ΦΕΚ που κοίταξα για διευκρινήσεις.