diff --git a/src/main/resources/static/js/helpers.js b/src/main/resources/static/js/helpers.js
index 369db8140c287809ac41dc49e63c14b9288330df..24aafcf8e4fd12b1da0c6aa31b682bf8c4f45924 100644
--- a/src/main/resources/static/js/helpers.js
+++ b/src/main/resources/static/js/helpers.js
@@ -1,8 +1,9 @@
-NUMBER_REGEX = new RegExp("^\\d+$");
+REGEX_NUMBER = new RegExp("^\\d+$");
+REGEX_NUMBER_GREATER_ZERO= new RegExp("^[1-9]\\d*$");
 
-function validateNumber(text, ID, hiddenID, message)
+function validateNumber(text, ID, hiddenID, message, regex)
 {
-    if(text.match(NUMBER_REGEX) == null)
+    if(text.match(regex) == null)
     {
         addTooltip(ID, message);
         if(hiddenID != null)
diff --git a/src/main/resources/static/js/settings.js b/src/main/resources/static/js/settings.js
index 4b1047b780fc0ba2867a86b243e3f241cab652bb..24022a6946d6308483131c97d0ab6a28c4ddda54 100644
--- a/src/main/resources/static/js/settings.js
+++ b/src/main/resources/static/js/settings.js
@@ -22,7 +22,7 @@ $(document).ready(function()
     {
         autoBackupDays.on('change keydown paste input', function()
         {
-            validateNumber(autoBackupDays.val(), 'settings-backup-auto-days', "hidden-settings-backup-auto-days", numberValidationMessage);
+            validateNumber(autoBackupDays.val(), 'settings-backup-auto-days', "hidden-settings-backup-auto-days", numberValidationMessage, REGEX_NUMBER_GREATER_ZERO);
         });
     }
 
@@ -31,7 +31,7 @@ $(document).ready(function()
     {
         autoBackupFilesToKeep.on('change keydown paste input', function()
         {
-            validateNumber(autoBackupFilesToKeep.val(), "settings-backup-auto-files-to-keep", "hidden-settings-backup-auto-files-to-keep", numberValidationMessageZeroAllowed);
+            validateNumber(autoBackupFilesToKeep.val(), "settings-backup-auto-files-to-keep", "hidden-settings-backup-auto-files-to-keep", numberValidationMessageZeroAllowed, REGEX_NUMBER);
         });
     }
 
@@ -45,8 +45,8 @@ function validateForm()
     let autoBackupCheckbox = document.getElementsByName("autoBackupActivated")[0];
     if(autoBackupCheckbox.checked)
     {
-        let autoBackupDaysValid = validateNumber($('#settings-backup-auto-days').val(), "settings-backup-auto-days", "hidden-settings-backup-auto-days", numberValidationMessage);
-        let autoBackupFilesToKeepValid = validateNumber($('#settings-backup-auto-files-to-keep').val(), "settings-backup-auto-files-to-keep", "hidden-settings-backup-auto-files-to-keep", numberValidationMessageZeroAllowed);
+        let autoBackupDaysValid = validateNumber($('#settings-backup-auto-days').val(), "settings-backup-auto-days", "hidden-settings-backup-auto-days", numberValidationMessage, REGEX_NUMBER_GREATER_ZERO);
+        let autoBackupFilesToKeepValid = validateNumber($('#settings-backup-auto-files-to-keep').val(), "settings-backup-auto-files-to-keep", "hidden-settings-backup-auto-files-to-keep", numberValidationMessageZeroAllowed, REGEX_NUMBER);
         return autoBackupDaysValid && autoBackupFilesToKeepValid;
     }
 
diff --git a/src/main/resources/static/js/transactions.js b/src/main/resources/static/js/transactions.js
index b24b599c20a16b89f9de20dc26e7da5ec3fad9ef..dd01fb9403a07749b8ef255db419a6d6760c9b23 100644
--- a/src/main/resources/static/js/transactions.js
+++ b/src/main/resources/static/js/transactions.js
@@ -125,7 +125,7 @@ $(document).ready(function()
         $(transactionRepeatingModifierID).on('change keydown paste input', function()
         {
             // substr(1) removes "#" at the beginning
-            validateNumber($(this).val(), transactionRepeatingModifierID.substr(1), "hidden-" + transactionRepeatingModifierID.substr(1), numberValidationMessage);
+            validateNumber($(this).val(), transactionRepeatingModifierID.substr(1), "hidden-" + transactionRepeatingModifierID.substr(1), numberValidationMessage, REGEX_NUMBER);
         });
     }
 
@@ -133,7 +133,7 @@ $(document).ready(function()
     {
         $(transactionRepeatingEndAfterXTimesInputID).on('change keydown paste input', function()
         {
-            validateNumber($(this).val(), transactionRepeatingEndAfterXTimesInputID.substr(1), null, numberValidationMessage);
+            validateNumber($(this).val(), transactionRepeatingEndAfterXTimesInputID.substr(1), null, numberValidationMessage, REGEX_NUMBER);
 
             // select corresponding radio button
             let endAfterXTimes = document.getElementById("repeating-end-after-x-times");
@@ -301,7 +301,7 @@ function validateForm(allowEmptyAmount=false)
 
     if($(transactionRepeatingModifierID).length)
     {
-        if(!validateNumber($(transactionRepeatingModifierID).val(), transactionRepeatingModifierID.substr(1), "hidden-" + transactionRepeatingModifierID.substr(1), numberValidationMessage))
+        if(!validateNumber($(transactionRepeatingModifierID).val(), transactionRepeatingModifierID.substr(1), "hidden-" + transactionRepeatingModifierID.substr(1), numberValidationMessage), REGEX_NUMBER)
         {
             return false;
         }
@@ -319,7 +319,7 @@ function validateForm(allowEmptyAmount=false)
 
         if(endAfterXTimes.checked)
         {
-            if(!validateNumber($(transactionRepeatingEndAfterXTimesInputID).val(), transactionRepeatingEndAfterXTimesInputID.substr(1), null, numberValidationMessage))
+            if(!validateNumber($(transactionRepeatingEndAfterXTimesInputID).val(), transactionRepeatingEndAfterXTimesInputID.substr(1), null, numberValidationMessage), REGEX_NUMBER)
             {
                 return false;
             }