AcManager.Tools.Helpers.CustomUriRequest.TryParse C# (CSharp) Method

TryParse() private method

private TryParse ( [ uri ) : CustomUriRequest
uri [
return CustomUriRequest
        public static CustomUriRequest TryParse([CanBeNull] string uri) {
            if (uri?.StartsWith(CustomUriSchemeHelper.UriScheme, StringComparison.OrdinalIgnoreCase) != true) {
                return null;
            }

            var s = uri.SubstringExt(CustomUriSchemeHelper.UriScheme.Length);
            var m = Regex.Match(s, @"^/((?:/[\w\.-]+)+)/?([?&][^#]*)?(?:#(.*))?");
            return m.Success ? new CustomUriRequest {
                Path = m.Groups[1].Value.Substring(1).ToLowerInvariant(),
                Params = HttpUtility.ParseQueryString(m.Groups[2].Value),
                Hash = m.Groups[3].Value
            } : null;
        }
    }
CustomUriRequest