>> to-string pick [abc/def] 1
== "abcdef"
>>
Как я могу получить «abc/def» вместо этого?Rebol to-string странное поведение: как я могу исправить?
>> to-string pick [abc/def] 1
== "abcdef"
>>
Как я могу получить «abc/def» вместо этого?Rebol to-string странное поведение: как я могу исправить?
mold pick [abc/def] 1
== "abc/def"
Или:
form pick [abc/def] 1
=="abc/def"
Используя строку, которая ограничена {}, вы можете использовать формат^(xx) для вставки символа ASCII шестнадцатеричным кодом.
Пример:
>> to-string pick [{abc^(2F)def}] 1
== "abc/def""
>>
Используйте таблицу ASCII here, если вам нужно больше кодов.
Для получения дополнительной информации о строках REBOL см. this link.
Это работает, спасибо за ссылку, никогда не думал о чтении его раньше, теперь я буду. –
to-
семейство функций были изменены в Rebol 3, и ваш код теперь обеспечивает строку, которую вы хотите. OTOH, form
работает в 2 и 3.
Вы используете pick [abc/def] 1
, потому что вам нужен литеральный путь abc/def (и не нужно ли интерпретатору выбирать def из abc)? Вы можете использовать цитату, чтобы получить этот эффект более просто:
>> form quote abc/def
== "abc/def"
И затем есть стенограмма:
>> form 'abc/def
== "abc/def"
Привет, спасибо, скоро попробую Rebol 3. –
Это довольно элегантные синтаксисы, спасибо. –