Pra*_*rav 12 regex compiler-construction grammar
设L= { w in (0+1)* | w has even number of 1s}L,即L是偶数为1的所有位串的集合.下面哪个正则表达式代表L?
A)(0*10*1)*
B)0*(10*10*)*
C)0*(10*1)*0*
D)0*1(10*1)*10*
根据我的选择D永远不会正确,因为它不代表零1的位串.但其他选择呢?我们担心1的数量(偶数与否)不是零的数量无关紧要.
那么这是正确的选择,为什么?
如果错误的话.它不匹配0110(或任何仅为零的非空字符串)
B代表OK.由于页边距太小,我不打算在这里证明它.
C不匹配010101010(中间零不匹配)
如你所说,D不会被00或任何其他#匹配而没有匹配.
所以只有B.