如何为fslex指定模式中的unicode字符

时间:2011-03-02 14:52:01

标签: regex unicode f# fslex

在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

1 个答案:

答案 0 :(得分:2)

我认为你必须将unicode字符放在单引号中,就像在普通的F#代码中一样。

至少这似乎适用于我测试的一个小例子。