Указатели строк в Ruby - PullRequest
       7

Указатели строк в Ruby

1 голос
/ 11 октября 2019

В моем текущем проекте я конвертирую Ruby в Node.js. Я никогда не работал с Руби до этого, и поэтому я все еще пытаюсь изучить все синтаксические различия. В настоящее время я немного озадачен этим фрагментом:

      myUri = Addressable::URI.parse(original_path)
      idx = original_path.index(myUri.path)
      hit.props[:path] = original_path[idx..original_path.length-1]
    else
      hit.is_invalid = true

Итак, я понимаю, что мы анализируем original_path.

Затем мы получаем индекс myUri.path внутри original_path, который, я верю, вернет число.

Следующая строка - это то, что меня смущает. Я знаю, что настраиваю [:path] на что-то, но я не понимаю, что. Я думаю, что это модифицированная версия original_path, но я не понимаю, как она модифицируется.

1 Ответ

2 голосов
/ 11 октября 2019

original_path[idx..original_path.length-1] доступ к строке с использованием диапазона.

См. Пример диапазона

(1..4).to_a
# [1,2,3,4]

Строка диапазона / доступ к массиву занимает часть массива / строки, которая находится между границами диапазона. В этом случае - между idx (это начало myUri.path) и концом строки.

См. Ниже:

a = 'abcd'
# => "abcd"
a[1..a.size-1]
# => "bcd"

Документы

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