Posted on 2007-07-17 20:46
ZelluX 阅读(415)
评论(0) 编辑 收藏 所属分类:
Courses
1. {a, b, c}上的串S中,任何两个b都不相连,用正则表达式表示为
(a|c|ba|bc)*(b|空)
2. Pascal注释的表示
{(~})*}
{ } 中间为任意非}的符号,注意表达的严谨
3. C注释的表示就困难很多
例如要表示ba ...(没有ab)... ab这样的字符串,不能简单的写成
ba(~(ab))*ab
因为~非运算符通常只适用于单字符,否则容易产生混淆。
b*(a*~(a|b)b*)*a*
像这样的定义很难读,而且难以证明其正确性,因此在真正的扫描程序中通常用特殊方法解决。