Ошибка Ruby: синтаксическая ошибка, неожиданный tSTRING_BEG, ожидающий затем или ';'или '\ n' - PullRequest
0 голосов
/ 26 апреля 2019

Я столкнулся с чем-то неожиданным с некоторым базовым кодом ruby, и я не совсем понимаю, что я делаю неправильно.

irb(main):014:0>  if "x".include? "x" && "y".include? "y"
irb(main):015:1> puts "true"
irb(main):016:1> end
Traceback (most recent call last):
        3: from /usr/bin/irb:23:in `<main>'
        2: from /usr/bin/irb:23:in `load'
        1: from /usr/lib/ruby/gems/2.6.0/gems/irb-1.0.0/exe/irb:11:in `<top (required)>'
SyntaxError ((irb):14: syntax error, unexpected tSTRING_BEG, expecting then or ';' or '\n')
....include? "x" && "y".include? "y"
...                              ^
(irb):16: syntax error, unexpected end, expecting end-of-input
irb(main):017:0>

Но если я использую and вместо &&, это будет нормально.

irb(main):011:0>  if "x".include? "x" and "y".include? "y"
irb(main):012:1> puts "true"
irb(main):013:1> end
true
=> nil

1 Ответ

3 голосов
/ 26 апреля 2019

Поставьте ваши аргументы в скобках.

Вы путаете переводчика, упуская его.

irb(main):002:0> puts 'true' if "x".include?("x") && "y".include?("y")
true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...