У меня есть запрос request-uri в виде «/ node / 143» (просто пример формата).
Я хочу убрать первую косую черту из строки, я нашел функцию удалить и попробовал. Я просто не могу заставить его работать (я использую SBCL в Linux).
Я установил запрос-uri, используя этот код.
(setq request-uri "/node/143")
Когда я проверяю переменную, я возвращаю ее.
request-uri
"/node/143"
Теперь я пытаюсь удалить первую косую черту (на данный момент это просто что угодно, чтобы увидеть, как правильно используется функция).
(remove "/" request-uri)
"/node/143"
(remove '/ request-uri)
"/node/143"
Я даже пытался составить список
(remove '("/") request-uri)
"/node/143"
(remove '('/) request-uri)
"/node/143"
Хотя строки являются векторами символов Я подумал, что, может быть, вся строка может быть помещена в одну ячейку, и я попытался удалить все это, но все равно не повезло.
(remove "/node/143" request-uri)
"/node/143"
(remove '/node143 request-uri)
"/node/143"
Так что я сейчас в растерянности, эта, казалось бы, простая функция действительно ускользнула от меня, я думал, что следую документации в точности, но ничего не работает.
Может ли кто-нибудь пролить свет на то, что здесь происходит?
Спасибо.
Изменить: я нашел ответ на свой вопрос, в связи с которым возник еще один вопрос.
Чтобы удалить элемент из строки, я использовал
(remove #\/ request-uri)
А как насчет целой строки
`(remove #\node request-uri`)
Работает только для первого символа и выдает ошибку, а все последующие ничего не делают.
(remove "node" request-uri)
(remove 'node request-uri)
(remove ?\node request-uri)
(remove #\node request-uri)
(remove '("node") request-uri)
Я не уверен, как еще это можно решить здесь.