Мне интересно, есть ли способ вернуть первую букву слова. например, если вы введете слово («эй»), оно вернет только букву h. или если вы хотели, чтобы вы могли вернуть письмо e. индивидуально сами по себе. Я рассматривал возможность использования метода break или сканирования, но я не могу заставить их работать.Ruby Методы возврата отдельных писем
-2
A
ответ
1
Это наивная реализация, но вы можете использовать method_missing
для создания DSL, который бы позволил вам запросить слово для письма на разных позициях:
def self.method_missing(method, *args)
number_dictionary = {
first: 1,
second: 2,
third: 3,
fourth: 4,
fifth: 5,
sixth: 6,
seventh: 7,
eighth: 8,
ninth: 9,
tenth: 10
}
if method.to_s =~ /(.+)_letter/ && number = number_dictionary[$1.to_sym]
puts args[0][number - 1]
else
super
end
end
first_letter('hey') # => 'h'
second_letter('hey') # => 'e'
third_letter('hey') # => 'y'
2
Да:
def first_letter(word)
word[0]
end
Или, если с помощью Ruby 1.8:
def first_letter(word)
word.chars[0]
end
Используйте синтаксис str[index]
, чтобы получить определенную букву слова (0 является первой буквой, 1 второе, и так на).
2
другой метод, который вы можете посмотреть на это chr
, которая возвращает первый символ строки
>> 'hey'.chr # 'h'
вы также можете посмотреть на http://www.ruby-doc.org/core-1.9.3/String.html#method-i-slice, чтобы увидеть, как вы можете комбинировать регулярному_выражению и индексы, чтобы получить часть строки.
UPDATE: Если вы на Ruby 1.8, это немного хака но
>> 'hey'[0] # 104
>> 'hey'[0..0] # 'h'
>> 'hey'.slice(0,1) # 'h'
0
Используя ваш пример - слово "эй":
h = "hey"
puts h[0]
Это должно вернуть h
.
Смежные вопросы
- 1. Методы и методы возврата
- 2. Получение писем в Ruby
- 3. Как вызвать методы из двух отдельных моделей в Ruby Volt
- 4. методы приема и возврата
- 5. методы возврата и получения
- 6. Методы, более одного возврата?
- 7. Метод возврата Ruby
- 8. Ошибка возврата в Ruby
- 9. методы добытчик возврата контроллера нуль
- 10. Как остановить отдельных демонов ruby?
- 11. Операторы Ruby как методы?
- 12. Методы класса (ruby)
- 13. Комбинируйте методы в Ruby
- 14. Просмотреть доступные методы ruby
- 15. Ruby - Хэш методы рекурсивно
- 16. ruby - Файло-частные методы
- 17. Методы класса в Ruby
- 18. Глобальные методы в Ruby
- 19. Магические методы в Ruby?
- 20. Ruby, запустите все методы
- 21. Методы фабрики в Ruby
- 22. Методы Singleton в ruby
- 23. Ruby Программирование: Методы предикатов
- 24. Методы настройки Ruby
- 25. Ruby Атрибутивные методы
- 26. Методы времени в Ruby
- 27. методы именования как методы вызова переменных Ruby
- 28. Перенаправление писем с qmail на скрипт ruby
- 29. Рекомендации по анализу писем с Ruby
- 30. Ruby String Encode Последовательная частота писем
'строка [0]' и что это , – oldergod
вы можете использовать диапазон, как этот пример: http://stackoverflow.com/questions/6184697/how-to-get-a-substring-of-text – gmartellino
@oldergod Вы можете использовать '' hey ".chr' as см. ниже. – squiguy