diff --git a/string_utils/string_utils.go b/string_utils/string_utils.go
index bd219a790924e89867fc46680afb513e44cf9b49..e765f5af36e89eb86ca689b837ac23cb618508ad 100644
--- a/string_utils/string_utils.go
+++ b/string_utils/string_utils.go
@@ -3,6 +3,7 @@ package string_utils
 import (
 	"encoding/json"
 	"fmt"
+	"net/url"
 	"regexp"
 	"strconv"
 	"strings"
@@ -280,3 +281,9 @@ func SplitString(str string, sep []rune) []string {
 
 	return splitStrings
 }
+
+// IsUrlStrict Returns whether a URL is valid in a strict way (Must have scheme and host)
+func IsUrlStrict(str string) bool {
+	u, err := url.Parse(str)
+	return err == nil && u.Scheme != "" && u.Host != ""
+}