public static string Shorten(string url)
{
//整形(http(s)://を削除)
if (url.Length > 7 && url.Length < 128 && url.StartsWith("http://", StringComparison.OrdinalIgnoreCase))
{
url = url.Substring(7);
}
else
{
return url;
}
foreach (var nv in _nicovideo)
{
if (url.StartsWith(nv, StringComparison.Ordinal))
return string.Format("{0}{1}", "http://nico.ms/", url.Substring(nv.Length));
}
var i = url.IndexOf("nicovideo.jp/user/", StringComparison.OrdinalIgnoreCase);
if (i == 0 || i == 4) return string.Format("{0}{1}", "http://nico.ms/", url.Substring(13 + i));
i = url.IndexOf("nicovideo.jp/mylist/", StringComparison.OrdinalIgnoreCase);
if (i == 0 || i == 4) return string.Format("{0}{1}", "http://nico.ms/", url.Substring(13 + i));
i = url.IndexOf("seiga.nicovideo.jp/watch/", StringComparison.OrdinalIgnoreCase);
if (i == 0) return string.Format("{0}{1}", "http://nico.ms/", url.Substring(25));
return "http://" + url;
}
}