Test, validate and match regular expressions
Matches full HTTP/HTTPS URLs, including an optional scheme, protocol-relative form (//), user:password credentials, a multi-label domain with a 2-63 character TLD, optional port, path segments, query string, and fragment. It supports percent-encoded characters throughout and enforces realistic domain label length limits. With the gmi flags, it is well suited for extracting or validating web addresses in text in a case-insensitive, global manner.