Из той же серии, что и предыдущее. Засады в разработке.
Есть мэшап Metromap. Внутри, разбирая RSS фид, создает JavaScript строки. Типа:
var s = "строка, взятая из RSS";
Естественно, если создается такая строка, то необходимо из текста убрать переводы строк (\n \r). Нет проблем, хотя бы и функция replaceAll() из java.lang.String делает всю работу.
Но, после нескольких лет работы на одном из фидов (конкретно - вот здесь) и обнаружилась засада. Внутри исходных данных (текста) стали добавлять так называемый Unicode line break. HTML его игнорирует, если фид просматривать, то никаких лишних переводов нет. Но в тексте то он есть! И в указанном выше JavaScript фрагменте будет восприниматься именно как символ новой строки. Текст просто не будет компилироваться в итоге.
Для тех, кто еще не сталкивался с таким. Коды для этого Unicode linebreak: E2 80 A8
No comments:
Post a Comment