fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text.RegularExpressions;
  6.  
  7. public class Test
  8. {
  9. public static void Main()
  10. {
  11. var dct = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) {
  12. { "english", "en"},
  13. { "german", "de"},
  14. { "italian", "it" }
  15. };
  16. //var url = "http://w...content-available-to-author-only...e.org/english/"; // http://e...content-available-to-author-only...e.org/
  17. var url = "https://w...content-available-to-author-only...e.org/German/"; // https://d...content-available-to-author-only...e.org/
  18. string pat = @"(?i)^(https?://)www\.(.*?)/(english|german|italian)/.*$";
  19. Console.WriteLine(Regex.Replace(url, pat, m => {
  20. var val = "";
  21. return dct.TryGetValue(m.Groups[3].Value, out val) ?
  22. $"{m.Groups[1].Value}{dct[m.Groups[3].Value]}.{m.Groups[2].Value}/" :
  23. $"{m.Groups[1].Value}{m.Groups[3].Value}.{m.Groups[2].Value}/";
  24. }
  25. )
  26. );
  27. // //http://e...content-available-to-author-only...e.org/
  28.  
  29. }
  30. }
Success #stdin #stdout 0.09s 19644KB
stdin
Standard input is empty
stdout
https://d...content-available-to-author-only...e.org/