Monday, March 10, 2025

Slpit-string

using System;

using System.Text.RegularExpressions;


class Program

{

    static void Main()

    {

        string url = "https://example.com/a-guid/b-guid/c-guid/d.anyextension";

        

        if (TryExtractFields(url, out string fieldA, out string fieldBC))

        {

            Console.WriteLine($"a: {fieldA}");

            Console.WriteLine($"b/c: {fieldBC}");

        }

        else

        {

            Console.WriteLine("Invalid URL format.");

        }

    }


    static bool TryExtractFields(string url, out string fieldA, out string fieldBC)

    {

        fieldA = string.Empty;

        fieldBC = string.Empty;


        // Regex to match: https://{domain}/{guid}/{guid}/{guid}/filename.anyextension

        Regex regex = new Regex(@"^https://[^/]+/([0-9a-fA-F-]{36})/([0-9a-fA-F-]{36})/([0-9a-fA-F-]{36})/[^/]+\.[a-zA-Z0-9]+$");

        Match match = regex.Match(url);


        if (match.Success)

        {

            fieldA = match.Groups[1].Value;   // Extract GUID 'a'

            fieldBC = $"{match.Groups[2].Value}/{match.Groups[3].Value}";  // Extract 'b/c' as "b-guid/c-guid"

            return true;

        }


        return false;

    }

}


No comments:

Post a Comment