или нет?
Я так придумал. Может кто красивее подскажет str = 'a' str.start_with?(str.capitalize) => false
3.1.0 :005 > str = 'A' => "A" 3.1.0 :006 > str.start_with?(str.capitalize) => true
Такой метод можно написать самому
да я думал мож есть готовый уже в самом руби, JS к примеру есть такой
Можно ещё так: str =~ /^[A-Z]/
Ну или так: .start_with?(/[A-Z]/)
Hm 3.1.0 :001 > str = 'Aaaa' => "Aaaa" 3.1.0 :002 > str.first =~ /[A-Z]/ (irb):2:in `<main>': undefined method `first' for "Aaaa":String (NoMethodError)
Так 0 отдаёт
Ну да. Это рельсовая тема. Можно взять [0]. Но я выше другие варианты написал. Так как юзать всё-равно регексп, то /^[A-Z]/ выглядит оптимальным. Можно ещё кирилицу добавить: /^[A-ZА-Я]/
0 в руби - это true. Индекс символа в строке где нашлось совпадение. Если не находит, то возвращает nil
Да, про 0 я в курсе. Ожидал просто явно увидеть true
Обсуждают сегодня