6.06.2016 / 15:42 |  | 
Helltar    Пользователь  
   Сейчас: Offline 
 Регистрация: 29.11.2011
   | Морально.
  Неплохо, продолжай.
   | 
  6.06.2016 / 17:30 |  | 
MoteX    Пользователь  
   Сейчас: Offline 
 Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
   | Просто банальным тестом. Я по этому поводу написал документацию как по идее должно работать. Просто к примеру annimon действительно помог найти ошибки. Это ж и есть цель публикации   | 
  6.06.2016 / 18:15 |  | 
DominaN    Пользователь  
   Сейчас: Offline 
 Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
   | можно кроме принт добавить concat, вот моя реализация: private static final StringBuilder sb = new StringBuilder(64);  
   
public static String concat(String... strings) {  
    sb.delete(0, sb.length());  
   
    for (String s : strings) sb.append(s);  
   
    return sb.toString();  
}  
   
public static String concat(Object... strings) {  
    sb.delete(0, sb.length());  
   
    for (Object s : strings) sb.append(String.valueOf(s));  
   
    return sb.toString();  
}  
  | 
  6.06.2016 / 18:16 |  | 
aNNiMON    Супервизор 
   Сейчас: Offline 
 Имя: Витёк Регистрация: 11.01.2010
   | MoteX,  aRiGaTo отчасти прав, тебе бы помогли гораздо лучше, если б ты рассказал, как у тебя реализовано. Велосипеды велосипедами, а на начальном этапе мудрый совет от знающего человека поможет избежать дальнейших проблем.
  DominaN, конкатенация вроде есть. print("hello " & text)
  MoteX, c нетерпением жду if и возможности получить символ из строки (ну и всякие indexOf, length, substring тоже приветствуются).
  __________________
   let live  Изменено aNNiMON (6.06 / 18:20) (всего 2 раза) | 
  6.06.2016 / 18:20 |  | 
DominaN    Пользователь  
   Сейчас: Offline 
 Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
   | Насчет кавычек - вангую та же проблема, когда я делал подсветку синтаксиса с помощью регэкспов. Строка бьется посередине лишней кавычкой и лексема херится. Там я так и не починил, но вообще рекомендую все строки перед исполнением парсить в массив final String[] и обращаться к ним по индексу. Ну а при парсинге строк проверять, не стоит ли перед кавычкой \ и если стоит то игнорировать это как конец литерала
   | 
  6.06.2016 / 18:23 |  | 
DominaN    Пользователь  
   Сейчас: Offline 
 Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
   | aNNiMON, а split string?   public static String[] splitString(String str, String separator) {  
    final ArrayList<String> strings = new ArrayList<>();  
   
    int start = 0, end, skip = separator.length();  
   
    str = concat(str, separator);  
   
    while (start < str.length()) {  
        end = str.indexOf(separator, start);  
        strings.add(str.substring(start, end));  
        start = end + skip;  
    }  
   
    return strings.toArray(new String[strings.size()]);  
}  
  | 
  6.06.2016 / 18:23 |  | 
aNNiMON    Супервизор 
   Сейчас: Offline 
 Имя: Витёк Регистрация: 11.01.2010
   | Парсить регулярками что-то сложнее калькулятора, простите, зашквар. И М Х О
  __________________
   let live  | 
  6.06.2016 / 18:25 |  | 
DominaN    Пользователь  
   Сейчас: Offline 
 Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
   |  | 
  6.06.2016 / 18:51 |  | 
aRiGaTo    Пользователь  
   Сейчас: Offline 
 Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
   | DominaN, у регулярок есть одна проблема - они регулярные. Конечно, расширенные RE уже классом повыше и, вполне возможно, ими можно разобрать контекстно-свободные языки. А вот остальные под вопросом. Но, даже если и можно, такое выражение превратится в монстра. Чего можно избежать, используя более подходящий инструмент.  Грамматики, конечно же.  __________________
   don't tread on me  Изменено aRiGaTo (6.06 / 18:56) (всего 2 раза) | 
  8.06.2016 / 05:51 |  | 
MoteX    Пользователь  
   Сейчас: Offline 
 Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
   | Многие вещи я уже реализовал. В том числе и условия. К сожалению идею придется пока убрать в долгий ящик. Есть другие проекты, требующие внимания. Всем спасибо   Иногда может и буду попиливать, но это врядли  |