У меня есть текстовый ввод с мобильного устройства. Он содержит эможи. В C#, у меня есть текст, какКак удалить символы emoji из строки?
Text text
Проще говоря, я хочу, чтобы выходной текст будет
Text text
Я пытаюсь просто удалить все такие смайликов из текста с rejex .. за исключением, я не уверен, как преобразовать этот emoji в его последовательность unicode. Как это сделать?
редактировать:
Я пытаюсь сохранить пользовательский ввод в MySQL. Похоже, что mysql UTF8 действительно не поддерживает символы Unicode и right way to do it would be by changing the schema, но я не думаю, что это вариант для меня. Поэтому я пытаюсь просто удалить все символы emoji, прежде чем сохранять его в базе данных.
Это моя схема для соответствующего столбца:
Я использую NHibernate, как моя ORM и запрос на вставку генерироваться выглядит следующим образом:
Insert into `Content` (ContentTypeId, Comments, DateCreated)
values (?p0, ?p1, ?p2);
?p0 = 4 [Type: Int32 (0)]. ?p1 = 'Text text' [Type: String (20)], ?p2 = 19/01/2015 10:38:23 [Type: DateTime (0)]
Когда я скопировать этот запрос из журналов и запуск на mysql напрямую, я получаю эту ошибку:
1 warning(s): 1366 Incorrect string value: '\xF0\x9F\x98\x80 t...' for column 'Comments' at row 1 0.000 sec
Кроме того, я попытался преобразовать его в кодирующие байты и это действительно не работает ..
Непонятно, чего вы пытаетесь достичь - что бы вы сделали со строковым значением после замены символов? –
@JonSkeet отредактировал сообщение, спасибо. – LocustHorde
UTF-8 действительно * должен быть в порядке. Можете ли вы опубликовать информацию о том, как вы пытаетесь сохранить данные вместе со своей информацией о схеме? –