Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   проблема с xml строкой (https://javascript.ru/forum/misc/42956-problema-s-xml-strokojj.html)

Arramis 15.11.2013 18:07

проблема с xml строкой
 
Здравствуйте.

В .js файле есть огромная XML строка (база данных) на почти 500 кб следущего вида

var textxml = '<rootelement><parent><child1>data/&#13;/
</child1><child2>data/&#13;/
</child2><otherChild>somedata</otherChild></parent> ... <parent> ... </parent></rootelement>';
суть проблемы в том что в местах после
/
/
идут около 20 - ти пробелов и строка ломается на блоки, что приводит к синтаксической ошибке при попытке парсинга строки как xml документа.
Пробывал просто удалить эти спецсимволы редактором в котором пишу код, но разделение на блоки все равно остается.
Потом делал с помощью регулярки
[/&#13;/
]+\s
но опять не помогло.
Как это разрешить ? или помогите плиз составить нужную регулярку если я в правильном пути двигаюсь.

Arramis 15.11.2013 18:19

имеется ввиду в местах после спецсимволов. Не получается их корректоно написать в посте

danik.js 15.11.2013 18:28

Ну и кто этот умник, что догадался засунуть xml в js?

Arramis 15.11.2013 18:34

Цитата:

Сообщение от danik.js (Сообщение 281340)
Ну и кто этот умник, что догадался засунуть xml в js?

я тоже считаю что это полный бред, меня на работе заставили это сделать (

Arramis 15.11.2013 18:43

danik.js,
мне необходимо работать с xml локально, поэтому заставляют извращаюсь немного, а то я бы аяксом парсил xml документ на прямую и не парился бы.

ruslan_mart 15.11.2013 19:24

Цитата:

Сообщение от Arramis
что приводит к синтаксической ошибк

У Вас в конце каждой строки стоит не тот слеш, вот такой нужен: \

Arramis 15.11.2013 21:16

Цитата:

Сообщение от Rise (Сообщение 281360)
Arramis, и зачем ты вообще эту базу в строку засунул в js, только не говори что так и было, так просто не могло быть. В чем проблема создать xml документ из неё и парсить на прямую.

ну мне локальная база данных, напряму парсить xml документ не могу так как XMLHttpRequest не сработает с файлами находящиеся за пределами своего домена. Я тут вобще никакой домен тут неиспользую. Работаю локально, протокол file:/// а тут аякс не поможет.

danik.js 16.11.2013 18:26

Arramis,
Хром умеет, если задать особый флаг при запуске. Далее. Что мешает на этапе разработки перегнать xml в удобную json-структуру, естеественную для javascript? На худой конец засунь свой xml в html:
<script type="application/xml" id="mydb">
<root />
</script>

далее,
var xmlSource = document.getElementById('mydb').text;
var xmlDocument = new DOMParser().parseFromString(xmlSource, 'application/xml');

Arramis 17.11.2013 21:56

danik.js,
ну наверно ничего не мешает, надо проверить.
Спасибо за вариант с добавлением xml в html


Часовой пояс GMT +3, время: 20:26.