软考题目:关于用正规式表示

来源:百度知道 编辑:UC知道 时间:2024/09/20 15:31:33
● 由a、b构造且仅包含偶数个a的串的集合用正规式表示为 (49) 。
(49)A. (a*a)*b* B. (b* (ab*a)*)*
C. (a* (ba*)*b)* D. (a|b)* (aa)*
答案是B.
这道题怎么解答?谢谢
lushuicongshen对待选答案的解答是对的,但是没有完整的回答问题。答案中只有B的串a是成对出现。
A中因为a*的不确定性,所以可以表示奇数个a;
B中ab*a组合保证了a是成对出现。
C中a也不确定;
D中(aa)*是成对出现的,可是(a|b)*是不确定的。
正规式我是按正则表达式来理解的。

a(a ¦b)*a 表示的是以'a'开始结尾,中间可以是任意形式的ab组合,如ab,aa,bb,ba,aba等等,a,b顺序可以任意

而a(ab)*a 表示的是以'a'开始结尾,中间必须是ab,abab,ababab,也就是必须以ab形式出现,a在b之前