diff --git a/projects/player/src/app/components/validation-message/validation-message.component.html b/projects/player/src/app/components/validation-message/validation-message.component.html
index dae70ccf6967bd0a533ed6ca7a35b2a337657deb..acfd5d66da26d4ada63798bfcc013fc385dd4575 100644
--- a/projects/player/src/app/components/validation-message/validation-message.component.html
+++ b/projects/player/src/app/components/validation-message/validation-message.component.html
@@ -15,4 +15,8 @@
              [ngClass]="{'dynamic-validation-message' : elementModel.dynamicPositioning}" >
     {{maxLengthWarnMessage}}
   </mat-error>
+  <mat-error *ngIf="formElementControl.errors?.pattern"
+             [ngClass]="{'dynamic-validation-message' : elementModel.dynamicPositioning}" >
+    {{patternMessage}}
+  </mat-error>
 </ng-container>
diff --git a/projects/player/src/app/components/validation-message/validation-message.component.ts b/projects/player/src/app/components/validation-message/validation-message.component.ts
index 5cbf0e8c3bbe3c662c3cccc9f41509078c28bb89..b6a88c022b41c4b271acfacadaab10adb2b0729f 100644
--- a/projects/player/src/app/components/validation-message/validation-message.component.ts
+++ b/projects/player/src/app/components/validation-message/validation-message.component.ts
@@ -23,6 +23,7 @@ export class ValidationMessageComponent implements OnInit {
   requiredTrueMessage!: string;
   minLengthWarnMessage!: string;
   maxLengthWarnMessage!: string;
+  patternMessage!: string;
 
   constructor(private formService: FormService, private translateService: TranslateService) {}
 
@@ -51,6 +52,9 @@ export class ValidationMessageComponent implements OnInit {
     if (this.elementModel.maxLength) {
       validators.push(Validators.maxLength(<number> this.elementModel.maxLength));
     }
+    if (this.elementModel.pattern) {
+      validators.push(Validators.pattern(<string> this.elementModel.pattern));
+    }
     return validators;
   }
 
@@ -66,5 +70,8 @@ export class ValidationMessageComponent implements OnInit {
 
     this.maxLengthWarnMessage = (this.elementModel as TextFieldElement).maxWarnMessage ||
       this.translateService.instant('validators.inputTooLong');
+
+    this.patternMessage = (this.elementModel as TextFieldElement).patternWarnMessage ||
+      this.translateService.instant('validators.wrongPattern');
   }
 }
diff --git a/projects/player/src/assets/i18n/de.json b/projects/player/src/assets/i18n/de.json
index 55da88d07d323a830c40aea1394680a4a707deed..049ea0b40beaab0eb72d6f5c440d600ae9e25b00 100644
--- a/projects/player/src/assets/i18n/de.json
+++ b/projects/player/src/assets/i18n/de.json
@@ -7,7 +7,8 @@
     "inputRequired": "Eingabe erforderlich",
     "inputRequiredTrue": "Ankreuzen erforderlich",
     "inputTooShort": "Eingabe zu kurz",
-    "inputTooLong": "Eingabe zu lang"
+    "inputTooLong": "Eingabe zu lang",
+    "wrongPattern": "Eingabe enthält falsche Zeichen"
   },
   "dialogTitle": {
     "wrongUnitDefinitionType": "Falscher Unit-Definition-Type",