diff --git a/String calculator b/String calculator
index 301f5911de519e7b0b35e51e72e8439f8cf17616..fd9052ff6ff49cc96749ca7d759e2cc5d03840d4 100644
--- a/String calculator	
+++ b/String calculator	
@@ -13,29 +13,42 @@
 # eine negative zahl
 # mehrere negative zahlen
 
+# Delimiters:
+# add numbers seperated by a custom delimiter
+# Test with - Numbers
+
 import unittest
+import re
 
 class StringCalculator:
+    def __init__(self):
+        self.called_count = 0
     def add (self, numbers : str)-> int: #Erwartet Integer
         if not numbers:
             return 0
-        else:
-            numbers = numbers.replace('\n',',')
-            number_list = numbers.split(',')#aufteilung der strings
-            negative=[] #array für die negativen nummern
-            total_sum = 0
-            for number_str in number_list: #jedes element in der liste wird durch genommen
-                if number_str:
-                    number = int(number_str)# summierung der integer
-                    if number <0:
-                        negative.append(number)
-                    total_sum += number
+        
+        if numbers.startswith("//"):
+            delimiter_end_index = numbers.index("\n")
+            delimiter = numbers[2:delimiter_end_index]
+            numbers = numbers[delimiter_end_index + 1:]
+            numbers = numbers.replace(delimiter,",")
+        numbers = numbers.replace("\n",",")
+            
+        number_list = numbers.split(',')#aufteilung der strings
+        negative = [] #array für die negativen nummern
+            #total_sum = 0
+        for number_str in number_list: #jedes element in der liste wird durch genommen
+                #if number_str:
+            number = int(number_str)# summierung der integer
+            if number <0:
+                negative.append(number)
+                    #total_sum += number
 
-            if negative:
-                    print(f"Negative Zahlen:{negative} ")#ausgabe negative zahlen
-                    raise ValueError(f"negatives not allowed: {','.join(map(str, negative))}")
+        if negative:
+            print(f"Negative Zahlen:{negative} ")#ausgabe negative zahlen
+            raise ValueError(f"negatives not allowed: {','.join(map(str, negative))}")
                 
-            return total_sum
+        return sum(map(int,number_list))
         
     
 class TestStingCalculator(unittest.TestCase):
@@ -68,9 +81,17 @@ class TestStingCalculator(unittest.TestCase):
         with self.assertRaises(ValueError) as e:
             self.calculator.add("-1,-3,4")
         self.assertEqual(str(e.exception),"negatives not allowed: -1,-3")
+
         with self.assertRaises(ValueError) as e:
             self.calculator.add("-1\n-3,4")
         self.assertEqual(str(e.exception),"negatives not allowed: -1,-3")
+    def test_add_numbers_with_custom_delimiter(self):
+        self.assertEqual(self.calculator.add("//;\n1;2;3"),6)
+        self.assertEqual(self.calculator.add("//;\n1,2,3"),6)
+        with self.assertRaises(ValueError) as e:
+            self.calculator.add("//;\n-3,4")
+        self.assertEqual(str(e.exception),"negatives not allowed: -3")
+        
         
 
 if __name__=='__main__':