24.02.2014 / 14:36 | |
SeTSeR Пользователь Сейчас: Offline
Имя: Сергей Откуда: Где-то возле Москвы Регистрация: 01.07.2012
| UserSuperPupsik, на твой пост ( 24.02.2014 / 14:42) отвечу, есть, но мне лень откапывать |
24.02.2014 / 14:51 | |
UserSuperPupsik Пользователь Сейчас: Offline
Имя: UserSuperPupsik Регистрация: 27.09.2013
| Ну хорошо, сделал String s="System.out.println()"; String s1=s.substring(0,5); String s2=s.substring(7,9); String s3=s.substring(11,17); Теперь как сказать, выполни команду s или выполни команду s1.s2.s3. Может быть мы говорим о разном? Мне нужно сделать значение переменной s - командой , а на данный момент в s просто символы (т.е. тип String) Изменено UserSuperPupsik (24.02 / 14:54) (всего 1 раз) |
24.02.2014 / 14:55 | |
Oak Пользователь Сейчас: Offline
Имя: Коля Откуда: Москва Регистрация: 02.06.2010
| UserSuperPupsik, тебе же сказали, что нужно писать интерпретатор. А это довольно большие объемы кода и знаний
__________________
Эль Презеденте |
24.02.2014 / 14:57 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| UserSuperPupsik, смотри, допустим вот строка с командой: String s="System.out.println()"; тебе надо проверить является ли строка командой System.out.println, это делается так: if (s.substring(0,18).equals("System.out.println")) System.out.println("Hello world"); в яве строки сравниваются с помощью equals, а не с помощью двух знаков равно, как для других типов данных(числа, символы,и т.д.). А если у тебя строка вот такая: String s="System.out.println('text')"; и тебе надо выполнить команду и передать ей значение для вывода, то это уже с помощью indexOf() ищи первые кавычки и последние и бери подстроку между этими кавычками.
Изменено samodelkin (24.02 / 15:04) (всего 1 раз) |
24.02.2014 / 15:04 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| Конечно парсировка- очень сложная задача, нужны огромные знания и опыт.
|
24.02.2014 / 15:07 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| samodelkin, вау, я имею огромные знания и опыт |
24.02.2014 / 15:08 | |
UserSuperPupsik Пользователь Сейчас: Offline
Имя: UserSuperPupsik Регистрация: 27.09.2013
| Рябят, спасибо. |
24.02.2014 / 15:10 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| UserSuperPupsik, лучше всего сначала пробывать обрабатывать простые строки, вроде String s="text /text2", постепенно увеличивая сложность строки, когда выработаются знания и опыт можно приступать к созданию лингвистических анализаторов, интерпретаторов, и других интересных вещей.
|
24.02.2014 / 15:11 | |
UserSuperPupsik Пользователь Сейчас: Offline
Имя: UserSuperPupsik Регистрация: 27.09.2013
| Ладно а вот можно заранее комманды a=2 b=2 c=2 положить в вектор v или в массив A[], а потом вызывать так например A[2] и прозвучит команда c=2??????????????????????????? Изменено UserSuperPupsik (24.02 / 15:11) (всего 1 раз) |
24.02.2014 / 15:38 | |
Jahak Пользователь Сейчас: Offline
Имя: Константин Регистрация: 16.01.2012
| |