- Сообщения
- 33 703
- Реакции
- 11 005
Столкнулся со странной проблемой. Есть строка, содержащая тире (юникодный символ \u8208) При попытке разбить ее на части words=a.split("\u8208") ничего не происходит. Это принципиальная проблема или я где то туплю?
Зато, когда в тексте встречается слова, имеющие в составе тире (GID=882) с кодом \u8208 парсить не хочет
var myArray = app.selection[0].paragraphs.everyItem().contents
Разница в том, что contents — это не совсем string.Но какая разница?
contents — это не совсем string.
А у тебя на CS6 если toString убрать, работает или нет?Почему с неюникодными символами работает, а с юникодными нет?
В простом случае -- работает. Но гарантий тут никаких, в разных комбинациях может и не сработать. Я как-то попадался на эту багофичу, с тех пор привык контент получать через принудительную конвертацию в строку.А у тебя на CS6 если toString убрать, работает или нет?
Гм, интересно, попробую и первым и вторым способом, жалко, что по определенным обстоятельствам я до CC2015 доберусь не раньше понедельникаВ простом случае -- работает. Но гарантий тут никаких, в разных комбинациях может и не сработать. Я как-то попадался на эту багофичу, с тех пор привык контент получать через принудительную конвертацию в строку.
Как всегда, правильное решение - самое банальное. Как ни смешно, но дело было именно в этом!charCodeAt вам в десятичном представлении возвращает, а для \u надо шестнадцатиричное
А хифен 8208 это \u2010