aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sec_certs/sample
diff options
context:
space:
mode:
authorJ08nY2024-02-03 18:37:48 +0100
committerJ08nY2024-02-03 18:37:48 +0100
commitaffffb9fc08b09d39806815a741832df79cd95e5 (patch)
treee70ceefab0c3ff56534210191c58944414a9caa4 /src/sec_certs/sample
parent48876d5979adf8a63e2141262acd16608fc2aeda (diff)
downloadsec-certs-affffb9fc08b09d39806815a741832df79cd95e5.tar.gz
sec-certs-affffb9fc08b09d39806815a741832df79cd95e5.tar.zst
sec-certs-affffb9fc08b09d39806815a741832df79cd95e5.zip
Improve Japanese rules.
Diffstat (limited to 'src/sec_certs/sample')
-rw-r--r--src/sec_certs/sample/cc_certificate_id.py16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/sec_certs/sample/cc_certificate_id.py b/src/sec_certs/sample/cc_certificate_id.py
index 42dc9e6f..fe362b99 100644
--- a/src/sec_certs/sample/cc_certificate_id.py
+++ b/src/sec_certs/sample/cc_certificate_id.py
@@ -147,10 +147,18 @@ class CertificateId:
def _canonical_jp(self):
new_cert_id = self.clean
- if match := re.match("Certification No. (C[0-9]+)", new_cert_id):
- return match.group(1)
- if match := re.search("CRP-(C[0-9]+)-", new_cert_id):
- return match.group(1)
+ for rule in rules["cc_cert_id"]["JP"]:
+ if match := re.match(rule, new_cert_id):
+ groups = match.groupdict()
+ counter = groups["counter"]
+ digit = groups.get("digit")
+ year = _parse_year(groups.get("year"))
+ new_cert_id = f"JISEC-CC-CRP-C{counter}"
+ if digit:
+ new_cert_id += f"-{digit}"
+ if year:
+ new_cert_id += f"-{year}"
+ break
return new_cert_id
def _canonical_no(self):