字符串、语言与编译相关知识解析
1. 字符串运算操作符
1.1 加号操作符(One - Or - More 操作符)
加号操作符与星号操作符类似,但前者表示“一个或多个”,而星号表示“零个或多个”。它可以应用于单个字符串或一组字符串,表现形式是在应用对象后面跟一个“+”。例如:
- (b^+) 表示 ({b, b^2, b^3, \cdots}={b^i: i > 1})。
- ({b, c}^+) 表示 ({b, c, bb, bc, cb, cc, bbb, \cdots})。
对于一组字符串 (A),只有当 (A) 本身包含空字符串时,(A^+) 才包含空字符串;而 (A^*) 对于任何集合 (A) 都始终包含空字符串。
一般来说,对于字符串 (x) 和字符串集合 (A),有 (xx^ = x^ x = x^+) 以及 (AA^ = A^ A = A^+)。我们把对字符串或字符串集合应用加号操作符得到的集合称为正闭包。
示例:证明 ({\lambda} \cup b^+ = b^ )。
解答:({\lambda} \cup b^+ = {\lambda} \cup {b, bb, bbb, \cdots} = {\lambda, b, bb, bbb, \cdots} = b^ )。
1.2 问号操作符(Zero - Or - One 操作符)
问号操作符指定一个可选项目,可应用于单个字符串或一组字符串,表现形式是在应用对象后面跟一个“?”。例如,(bc?) 表示一个 (b) 后面跟一个可选的 (
超级会员免费看
订阅专栏 解锁全文

114

被折叠的 条评论
为什么被折叠?



