我正在使用ragel和C作为主语。
我只能使用'\ n'识别换行符,但我需要识别文件的开头作为替代。
在正则表达式的其他实现中,这可以由\A
或$
给出,但$
保留用于其他目的,'\A'
映射到其他内容(闹钟?)并且\A
给出了解析器错误。
答案 0 :(得分:5)
我认为没有逃脱序列。但是,您可以通过检查Ragel的ts
变量是否等于0来检测它。
答案 1 :(得分:0)
在文本格式中您有3个选择:
旧mac到9 \n\r
(和Commodore,Apple II,Microware OS-9)
Unices和新的Mac OS X \n
(以及BeOS,AmigaOS,MorphOS,RISC OS,Multics)
Windows使用\r\n
(以及DOS,OS / 2,Symbian,DEC RT-11)
在Ragel中定义行尾
endline = ( "\r" | "\n" )+ @{ increase_line_number; };
行的开头是(any - endline)