Как удалить смайлики из строкиC#

Место общения программистов C#
Anonymous
Как удалить смайлики из строки

Сообщение Anonymous »

Надеюсь, вы можете мне помочь. Я стараюсь выполнять упражнение на веб -сайте, и мне нужно чистить струны, но это не работает. < /P>

Код: Выделить всё

 public static string Clean(string identifier)
{
StringBuilder builder = new StringBuilder(identifier);

for(int i = 0; i < builder.Length; i++) {
if(Char.IsWhiteSpace(identifier, i)) {
builder[i] = '_';
}

if(Char.IsSurrogate(identifier, i)) {
builder.Remove(i, 1);
}

if(builder[i] == '-') {
builder.Remove(i, 1);
char toUpper = Char.ToUpper(builder[i]); // i since we've removed the char before
builder[i] = toUpper;
}

if(Char.GetUnicodeCategory(identifier, i) == UnicodeCategory.OtherLetter) {
builder.Remove(i, 1);
}
}
builder.Replace("\0", "CTRL");

return builder.ToString();
}
Каждый раз, когда я пытаюсь удалить эмодзи с помощью if (char.issurrogate) ... это просто заменяет смайлики "?".
Кто -нибудь знает решение?

Подробнее здесь: https://stackoverflow.com/questions/708 ... rom-string

Вернуться в «C#»