MCPcopy Create free account
hub / github.com/Squirrel/Squirrel.Windows / EncodeEmailAddress

Method EncodeEmailAddress

src/Squirrel/MarkdownSharp.cs:1546–1562  ·  view source on GitHub ↗

encodes email address randomly roughly 10% raw, 45% hex, 45% dec note that @ is always encoded and : never is

(string addr)

Source from the content-addressed store, hash-verified

1544 /// note that @ is always encoded and : never is
1545 /// </summary>
1546 private string EncodeEmailAddress(string addr)
1547 {
1548 var sb = new StringBuilder(addr.Length * 5);
1549 var rand = new Random();
1550 int r;
1551 foreach (char c in addr)
1552 {
1553 r = rand.Next(1, 100);
1554 if ((r > 90 || c == ':') && c != '@')
1555 sb.Append(c); // m
1556 else if (r < 45)
1557 sb.AppendFormat("&#x{0:x};", (int)c); // &#x6D
1558 else
1559 sb.AppendFormat("&#{0};", (int)c); // &#109
1560 }
1561 return sb.ToString();
1562 }
1563
1564 private static Regex _codeEncoder = new Regex(@"&|<|>|\\|\*|_|\{|\}|\[|\]", RegexOptions.Compiled);
1565

Callers

nothing calls this directly

Calls 1

ToStringMethod · 0.45

Tested by

no test coverage detected