我尝试查找的正则表达式的格式为a^k s a^k
,k >= 1
,其中s是字母{a,b}
上的任意字符串。例如,aaaabbbaaa
在语言中,因为它可以表示为a^3 abbb a^3
。
编辑:限制你只能使用连接(ab),联合(a | b),星号(a *)和加号(a +)。 我如何为此编写正则表达式?
编辑:
我是对的,(a(a|b)*a)+
确实抓住了这个。
答案 0 :(得分:0)
答案 1 :(得分:0)
a+(a|b)*a+
怎么样?那将是一个或多个a
,然后是a
或b
零次或多次,然后是a
一次或多次?这样,至少a^1
将位于正面和背面,因此每个字符串都将使用您的语言,因为+
是一次或多次,所以它可以a^1
到{{1 }}。
如果s必须至少为长度1,请将a^infinity
更改为*
。
编辑:虽然你可以在最后拿出加号并仍然有效,但你的工作会有效。