Как разделить строку в Ruby и получить все объекты кроме первого?

Вы, вероятно, хотите сместить оттенок, но не насыщенность или значение.

Так, преобразуйте свое значение RGB в HSV, добавьте 180 градусов к H (360 градусов по модулю, конечно) и преобразуйте назад в RGB.

Преобразование forumlas здесь .

80
задан codeforester 12 January 2017 в 01:18
поделиться

6 ответов

Попробуйте следующее:

first, *rest = ex.split(/, /)

Теперь first будет первым значением, rest будет остальной частью массива.

96
ответ дан 24 November 2019 в 09:52
поделиться

Поскольку у вас есть массив, вам действительно нужен Array # slice , а не split .

rest = ex.slice(1 .. -1)
# or
rest = ex[1 .. -1]
]
14
ответ дан 24 November 2019 в 09:52
поделиться
ex.split(',', 2).last

Число 2 в конце говорит: разделить на 2 части, не более.

обычно разделить значение на столько частей, сколько возможно, используя второе значение, вы можете ограничить, как вы получите много штук. Использование ex.split (',', 2) даст вам:

["test1", "test2, test3, test4, test5"]

в виде массива вместо:

["test1", "test2", "test3", "test4", "test5"]
42
ответ дан 24 November 2019 в 09:52
поделиться

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

parameter1,parameter2,parameter3,parameter4,parameter5 = ex.split(",")
5
ответ дан 24 November 2019 в 09:52
поделиться
ex="test1,test2,test3,test4,test5"
all_but_first=ex.split(/,/)[1..-1]
5
ответ дан 24 November 2019 в 09:52
поделиться

Вы, вероятно, опечатали несколько вещей. Насколько я понимаю, вы начинаете со строки, такой как:

string = "test1, test2, test3, test4, test5"

Затем вы хотите разделить ее, чтобы оставить только значимые подстроки:

array = string.split(/, /)

И, в конце концов, вам нужны только все элементы, за исключением первого:

# We extract and remove the first element from array
first_element = array.shift

# Now array contains the expected result, you can check it with
puts array.inspect

Это ответ на ваш вопрос?

9
ответ дан 24 November 2019 в 09:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: