请教一个正则表达式的写法:字符串由a,b,c组成,其中a和b的总和是奇数个,c的数目是偶数个。

我昨天写了一个,发现好像不对,还是不能识别caccbccac之类的:((cabc|cbac|acbc|cacb)*(cc)*(ab|ba|aa|bb)*)*(a|b)((... 我昨天写了一个,发现好像不对,还是不能识别caccbccac之类的:((cabc|cbac|acbc|cacb)*(cc)*(ab|ba|aa|bb)*)*(a|b) ((cabc|cbac|acbc|cacb)*(cc)*(ab|ba|aa|bb)*)*
具体用什么格式无所谓,只要能让人看懂就行。
这个问题是要求写出表示语言L={string | string 中a和b的总和是奇数个,c的数目是偶数个}的正则表达式。字母表Σ={a,b,c}
展开
 我来答
木祥巨1j
2011-09-23 · TA获得超过310个赞
知道答主
回答量:145
采纳率:0%
帮助的人:137万
展开全部
怀疑直接用标准的正则不能实现,需要加一些js之类的判断。
^[abc]*$这个是判断是否为abc字符组成的正则
追问
可以,是一道作业题。不能用任何附加的东西
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
spook3658
2011-09-23 · TA获得超过6367个赞
知道大有可为答主
回答量:1336
采纳率:0%
帮助的人:1975万
展开全部
利用堆栈分别统计ab 和c:
^((?(group_C)(?'-group_C'[c])|(?'group_C'[c]))|(?(group_AB)(?'-group_AB'[ab])|(?'group_AB'[ab])))*(?(group_C)(?!))(?(group_AB)|(?!))$
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
培志吖4333
2012-02-24 · TA获得超过6.2万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2168万
展开全部
我怎么感觉不行啊...这个因为正则表达式中闭包是无法限制字母表中记号的个数的,不知道对不对,也想坐等答案...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
计名pS
2011-09-23 · TA获得超过3649个赞
知道大有可为答主
回答量:4189
采纳率:0%
帮助的人:2257万
展开全部
/^(?=[^ab]*[ab][^ab]*(?:[ab][^ab]*[ab])*[^ab]*$)[^c]*(?:c[^c]*c)+[^c]*$/

--我能问一下这位小哥哪间学校么? 这题出的...
更多追问追答
追问
这是理论课,所以看起来不太寻常。这个题目的要求是只允许出现a,b,c这三种字符;^ab不是表示除ab之外的字符吗?好像不对太吧
追答
--哦,这个简单呀 [^ab] = c; [^c] = [ab]

/^(?=c*[ab]c*(?:[ab]c*[ab])*c*$)[ab]*(?:c[ab]*c)+[ab]*$/

--我倒是挺想知道你们的标准答案的; 先别关这贴可以么?? 等你有了老师的标准答案,让我学习学习;谢~~谢!!!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户30914
2011-09-25 · TA获得超过244个赞
知道答主
回答量:525
采纳率:0%
帮助的人:169万
展开全部
*#[0-9][abAB]*
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式