У меня есть текст, который содержит ‍
Столяр с нулевой шириной , который не отображается в пользовательском интерфейсе, но когда я отправил его в виде смс, он показывает как вопросительный знак ?
в iPhone.
Я пытался удалить его с помощью gsub, но он не удаляется.
text.gsub("&zwj\;", "")
Есть ли кто-нибудь, чтобы удалить такой невидимый символ из текста?
Обновление:
В дополнение к ответу @ matt
Юникод имеет следующие символы нулевой ширины:
- U + 200B пробел нулевой ширины
- U + 200C нулевой ширины, не соединяющий код Unicode, кодовая точка
- U + 200D нулевой ширины, Unicode, кодовая точка
- U + FEFF нулевая ширина, интервал без кода Unicode, кодовая точка
Чтобы заменить их в тексте, вы можете использовать простое регулярное выражение:
text = text.gsub(/[\u200B-\u200D\uFEFF]/, '')