fork download
  1. using System;
  2. using System.IO;
  3. using System.Text.RegularExpressions;
  4.  
  5. public class Test
  6. {
  7. public static void Main()
  8. {
  9. Console.WriteLine(IsValidHttpsUrl("192.168.0.1:12345/testdir/testdir_2"));
  10. Console.WriteLine(IsValidTcpOrUdpUrl("mydomain.fr:31337"));
  11. }
  12. public static bool IsValidHttpsUrl(string url)
  13. {
  14. const string Pattern = @"^(([a-z0-9-]+\.)+[a-z]{2,6}|((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9]))(:(6553[0-5]|655[0-2]\\d|65[0-4]\\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3}))?(/[\w/.]*)?$";
  15.  
  16. var regex = new System.Text.RegularExpressions.Regex(Pattern, System.Text.RegularExpressions.RegexOptions.Compiled);
  17. return regex.Match(url).Success;
  18. }
  19.  
  20. public static bool IsValidTcpOrUdpUrl(string url)
  21. {
  22. const string Pattern = @"^(([a-z0-9-]+\.)+[a-z]{2,6}|((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])):(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3})$";
  23.  
  24. var regex = new System.Text.RegularExpressions.Regex(Pattern, System.Text.RegularExpressions.RegexOptions.Compiled);
  25. return regex.Match(url).Success;
  26. }
  27. }
Success #stdin #stdout 0.12s 24688KB
stdin
Standard input is empty
stdout
True
True