Разбор вывода консоли / Ruby на рельсах - PullRequest
2 голосов
/ 22 февраля 2011

Я новичок в разработке моего второго проекта на Ruby on Rails: графический калькулятор.

Я использую октаву для оценки выражений. Я уже в состоянии оценить их и захватить вывод в строку, но, к примеру, он отображается как «ans = 48». Мне нужно избавиться от «ans =» из строки, но я не могу найти ничего о разборе строк, которое было бы полезно для моего случая. Большинство статей посвящено разбору HTML или URL. В Visual Basic были функции синтаксического анализа, такие как left (), mid () и right ().

Есть ли эквивалент для рубина?

MK

Ответы [ 3 ]

1 голос
/ 22 февраля 2011

Если вы всегда разбираете знак равенства, и он является единственным в выражении, вы можете получить значение в правой части выражения следующим образом:

expression = "ans = 48"
expression.split('=').last.strip
=> "48"
0 голосов
/ 22 февраля 2011

вы можете заменить ans = пустой строкой, используя gsub

expression.gsub!('ans = ','')

p expression
=> '48'
0 голосов
/ 22 февраля 2011

Посмотрите на методы для строк .Есть число, но проще всего было бы просто разбить строку на пробел - или, может быть, что-то более сложное - используя String#slice

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...