在FSharp Lexer的模式中指定Unicode字符的正确方法是什么。 以下代码未使用FsLex.exe实用程序编译:
let lexeme lexbuf = LexBuffer<char>.LexemeString lexbuf
...
rule tokenize = parse
| ['a'-'z' 'A'-'Z'] { TOKEN1 }
| [\u0100\u0101] { TOKEN2 }
| [\u0102-\u01FF] { TOKEN3 }
...
| [eof] { EOF }
我做错了什么?
P.S:我正在使用fslex.exe和--unicode选项
谢谢,Vitaliy
答案 0 :(得分:2)
我认为你必须将unicode字符放在单引号中,就像在普通的F#代码中一样。
至少这似乎适用于我测试的一个小例子。