--- /dev/null
+#!/bin/bash
+
+checkURL() {
+ # Desc: Checks if string is a valid URL.
+ # Warning: Does not correctly handle multi-byte characters.
+ # Version: 0.0.1
+ # Input: arg1: string
+ # Output: return code 0: string is a valid URL
+ # return code 1: string is NOT a valid URL
+ # Depends: Bash 5.0.3
+ # Ref/Attrib: https://stackoverflow.com/a/3184819
+ regex='(https?|ftp|file|ssh|git)://[-A-Za-z0-9\+&@#/%?=~_|!:,.;]*[-A-Za-z0-9\+&@#/%=~_|]'
+ string="$1";
+ if [[ $1 =~ $regex ]]; then
+ return 0;
+ else
+ reutrn 1;
+ fi;
+}
+
+#==BEGIN sample code
+testString="https://google.com/security.main.html"
+if checkURL "$testString"; then echo "Is a valid URL:$testString"; else echo "Is NOT a valid URL:$testString"; fi;
+testString="ssh://username@host.xz/absolute/path/to/repo.git/"
+if checkURL "$testString"; then echo "Is a valid URL:$testString"; else echo "Is NOT a valid URL:$testString"; fi;
+#==END sample code