Personnummer
Detects Personnummer patterns. This pattern is based on a Microsoft Purview built-in sensitive information type. Users already running Purview may prefer to enable the built-in SIT directly, or use this version as a starting point for customisation.
- Type
- regex
- Engine
- boost_regex
- Confidence
- medium
- Confidence justification
- Medium confidence: pattern has structural constraints but corroborative keywords are recommended to reduce false positive rates. Added context gating and exclusion rules improve precision and reduce incidental matches.
- Detection quality
- Verified
- Jurisdictions
- eu, se
- Regulations
- BDSG, CNIL / LIL, GDPR
- Frameworks
- ISO 27001, ISO 27701
- Data categories
- pii, government-id
- Scope
- narrow
- Risk rating
- 9
- Platform compatibility
- Purview: Compatible, GCP DLP: Compatible, Macie: Compatible, Zscaler: Compatible, Palo Alto: Compatible, Netskope: Compatible
Pattern
\b(19|20)?\d{6}[-+]?\d{4}\b
Corroborative evidence keywords
identifier, number, ID, ID number, identification, ID card, license, permit, registration, certificate, data record, database record, record set, data extract, data export, database table, spreadsheet, data registry, registry entry, master data (+13 more)
Proximity: 300 characters
Should match
19900101-1239— Full personnummer with century, valid Luhn check digit850615-4569— Short personnummer format, valid Luhn check digit200101+1234— Person over 100 years old (plus sign), valid Luhn check digit
Should not match
21900101-1234— Invalid century prefix (21 instead of 19 or 20)900101-123— Only 3 digits in last group instead of 4900101-12345— 5 digits in last group instead of 4template example placeholder record identifier— Template/sample context should be excluded even when anchor words are present
Known false positives
- Common words and phrases related to personnummer appearing in policy documents, training materials, HR templates, or compliance guidelines without actual personal data. Mitigation: Require corroborative evidence keywords within the proximity window to confirm sensitive data context rather than general discussion.
- In Australian tenants, Australian mobile telephone numbers can satisfy this ten-digit structure and create cross-SIT numeric identifier overmatch. Mitigation: Use the AU mobile number NONE-of regex gate where phone numbers are not valid positive evidence.
- In multiple EU languages, similar terminology used in formal or administrative contexts (education, professional documentation) that does not constitute sensitive data collection. Mitigation: Layer with additional contextual signals such as structured identifiers, form fields, or database column headers to distinguish sensitive records from general references.