-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstandardize-url.cs
More file actions
38 lines (30 loc) · 1.54 KB
/
standardize-url.cs
File metadata and controls
38 lines (30 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
public class StandardizeUrl
{
public static string Converter(string entrada)
{
string palavraSemAcento = "indefinido";
string caracterComAcento = "áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ,. ?&:/!;ºª%‘’()\"”“#+";
string caracterSemAcento = "aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC----------------------";
if (String.IsNullOrEmpty(entrada))
return palavraSemAcento;
for (int i = 0; i < entrada.Length; i++)
{
if (caracterComAcento.IndexOf(Convert.ToChar(entrada.Substring(i, 1))) >= 0)
{
int car = caracterComAcento.IndexOf(Convert.ToChar(entrada.Substring(i, 1)));
palavraSemAcento += caracterSemAcento.Substring(car, 1);
}
else
palavraSemAcento += entrada.Substring(i, 1);
}
string[] cEspeciais = { "#39", "---", "--", "'", "\r\n", "\n", "\r", "#8220", "#8221", "#", "<i>", "<-i>", "<br>", "<br />" };
for (int q = 0; q < cEspeciais.Length; q++)
palavraSemAcento = palavraSemAcento.Replace(cEspeciais[q], "-");
for (int x = (cEspeciais.Length - 1); x > -1; x--)
palavraSemAcento = palavraSemAcento.Replace(cEspeciais[x], "-");
palavraSemAcento = palavraSemAcento.ToLower().Replace(Environment.NewLine, "").TrimStart('-').TrimEnd('-')
.Replace("--", "-");
return palavraSemAcento.ToLower();
}
}