Корежит выражение
-
Корежит выражение такого типа при установке переменной и получается каша в скрипте результате.
[[NEW_VARIABLE]][[[NEW_VARIABLE]].length-1].split('"')[0]
И есть ли еще какие-то варианты работы со строками, кроме регулярок и разбиения на список? Например, можно было бы несколько простых функций ввести: поиск подстроки в строке, удаления строки с позиции, копирование подстроки с позиции.
-
Тут не должно быть второе вхождение переменной не VAR_NEW_VARIABLE, а NEW_VARIABLE ?
По сути это что? Взять последнюю строку из массива строк, и из нее - первый компонент, если разделитель
двойная кавычка?
-
Да, ошибочка. [[NEW_VARIABLE]][[[NEW_VARIABLE]].length-1].split('"')[0]
По сути это что? Взять последнюю строку из массива строк, и из нее - первый компонент, если разделитель двойная кавычка?
Взять последнюю строку из списка строк, и эту строку разбить в список разделителем двойная кавычка и взять первую строку.
-
Выход - всего-то поставить пробельчик между "[", выполняющей роль индекса массива, и "[[", обрамляющими название переменной. Получается прекрасный скрипт типа такого:
section_start("", 472569087)! VAR_NEW_VARIABLE = [] VAR_NEW_VARIABLE.push("123\u0022456\u0022789") VAR_NEW_VARIABLE.push("abc\u0022def\u0022hij") VAR_NEW_VARIABLE.push("ABC\u0022DEF\u0022HIJ") section_end()! section_start("", 977009027)! VAR_AAA = VAR_NEW_VARIABLE[ VAR_NEW_VARIABLE.length-1].split('"')[0] section_end()!
Парсер/кодген BAS в этом смысле очень простой. Для него любая комбинация "[[" как красная тряпка для быка. Сразу накидывается конвертировать в VAR_ переменную. Ставим пробел и подталкиваем его в нужном направлении.
-
Ясно спасибо, но лучше через встроенные джаваскрипт возможности буду парсить, так меньше ресурсов будет уходить.
-
@Mulin Ну тут вопрос спорный. Некоторые вещи элегантно и эффективно одним-двумя кубиками сделать. Другие - можно и кубиками, но выйдет нереальное спагетти. Третьи - только javascript. По ситуации.
-
This post is deleted!