bee*_*ill 5 unicode rebol character codepoint rebol3
我想比较字符,看看它们是否匹配.我无法弄清楚为什么它不起作用.我期待true输出,但我变得虚假.
character: "a"
word: "aardvark"
(first word) = character ; expecting true, getting false
Run Code Online (Sandbox Code Playgroud)
所以"a"在Rebol中不是一个字符,它实际上是一个字符串.
单个unicode字符是它自己的独立类型,具有自己的文字语法,例如#"a".例如,它可以从INTEGER来回转换!获取一个代码点,单字母字符串"a"不能:
>> to integer! #"a"
== 97
>> to integer! "a"
** Script error: cannot MAKE/TO integer! from: "a"
** Where: to
** Near: to integer! "a"
Run Code Online (Sandbox Code Playgroud)
字符串不是一系列单字符STRING!s,它是一系列CHAR!.所以你想要的是:
character: #"a"
word: "aardvark"
(first word) = character ;-- true!
Run Code Online (Sandbox Code Playgroud)
(注意:有趣的是,单个字符串和该字符的二进制转换将是等效的:
>> to binary! "?"
== #{CEBC}
>> to binary! #"?"
== #{CEBC}
Run Code Online (Sandbox Code Playgroud)
......那些是UTF-8字节表示.)
| 归档时间: |
|
| 查看次数: |
129 次 |
| 最近记录: |