diff --git a/src/lib/isLicensePlate.js b/src/lib/isLicensePlate.js
index bd146be91..54d80635f 100644
--- a/src/lib/isLicensePlate.js
+++ b/src/lib/isLicensePlate.js
@@ -14,7 +14,7 @@ const validators = {
   'pt-BR': str =>
     /^[A-Z]{3}[ -]?[0-9][A-Z][0-9]{2}|[A-Z]{3}[ -]?[0-9]{4}$/.test(str),
   'pt-PT': str =>
-    /^([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})$/.test(str),
+    /^(([A-Z]{2}[ -·]?[0-9]{2}[ -·]?[0-9]{2})|([0-9]{2}[ -·]?[A-Z]{2}[ -·]?[0-9]{2})|([0-9]{2}[ -·]?[0-9]{2}[ -·]?[A-Z]{2})|([A-Z]{2}[ -·]?[0-9]{2}[ -·]?[A-Z]{2}))$/.test(str),
   'sq-AL': str =>
     /^[A-Z]{2}[- ]?((\d{3}[- ]?(([A-Z]{2})|T))|(R[- ]?\d{3}))$/.test(str),
   'sv-SE': str =>
diff --git a/test/validators.test.js b/test/validators.test.js
index c168103b0..7c8c49594 100644
--- a/test/validators.test.js
+++ b/test/validators.test.js
@@ -14317,16 +14317,42 @@ describe('Validators', () => {
       args: ['pt-PT'],
       valid: [
         'AA-12-34',
-        '12·34·AB',
+        '12-AA-34',
+        '12-34-AA',
+        'AA-12-AA',
+        'AA·12·34',
         '12·AB·34',
+        '12·34·AB',
+        'AB·34·AB',
+        'AA 12 34',
+        '12 AA 34',
+        '12 34 AA',
         'AB 12 CD',
+        'AA1234',
+        '12AA34',
+        '1234AA',
         'AB12CD',
       ],
       invalid: [
         '',
         'notalicenseplate',
+        'AA-AA-00',
+        '00-AA-AA',
+        'AA-AA-AA',
+        '00-00-00',
+        'AA·AA·00',
+        '00·AA·AA',
+        'AA·AA·AA',
+        '00·00·00',
+        'AA AA 00',
+        '00 AA AA',
+        'AA AA AA',
+        '00 00 00',
         'A1-B2-C3',
+        '1A-2B-3C',
         'ABC-1-EF',
+        'AB-C1D-EF',
+        'AB-C1-DEF',
       ],
     });
     test({