高分求:“不包含子串abb的由a和b组成的全体符号串”,写出其正规表达式

cbc 2005-03-27 06:21:07
“不包含子串abb的由a和b组成的全体符号串”,写出其正规表达式
...全文
2604 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
bulala 2005-03-31
  • 打赏
  • 举报
回复
(a*[ab]?)*
archim 2005-03-31
  • 打赏
  • 举报
回复
能不能分2步呀

1. 由a和b组成的全体符号串 [ab]*
2. 不包含子串abb (abb)

用grep来表示就是

egrep '[ab]*' | egrep -v '(abb)'
Student02370236 2005-03-31
  • 打赏
  • 举报
回复
呵呵,楼主又有编译原理的问题了啊,你们现在学到什么地方了啊?我们刚开始语法分析...
楼主的问题可以通过状态图来分析,我做的是(a* b)*,是通过状态图来的
zhousqy 2005-03-31
  • 打赏
  • 举报
回复
忘了,哎。
jackael008 2005-03-31
  • 打赏
  • 举报
回复
关注
ainibaobao 2005-03-27
  • 打赏
  • 举报
回复
有意思。
  • 打赏
  • 举报
回复
还有你的哪个是有问题的
(aaa|aab|aba|baa|bab|bba|bbb)*
bbabba 可以被你的描述
babbab 也可以被你的描述
而这两个都是有问题的
  • 打赏
  • 举报
回复
其实如果你容许空串的话,这个就可以啊: b*(a+b)*a* (1)
还有刚才的哪个b*(a*b|(b?a)*) (2)也没有问题的 他们其实是一样的
只不过是形式不同而已 (2是可以简化成1的)
  • 打赏
  • 举报
回复
? 就是 匹配 0个或者 1个字符啊:
比如 一个或者多个 b 就是这个样子 b?
cbc 2005-03-27
  • 打赏
  • 举报
回复
说错了,我觉得你这样写还是有可能出现含abb的符号串
cbc 2005-03-27
  • 打赏
  • 举报
回复
我觉得你这样写还是有可能出现空串
  • 打赏
  • 举报
回复
如果要匹配空串的话 可以变成这个样子就好了:

b*(a*b|(b?a)*)
cbc 2005-03-27
  • 打赏
  • 举报
回复
b*(a*b|(b?a)+)怎么会出现?呢

是不是(b*(a*b|b*a)+)
  • 打赏
  • 举报
回复
不好意思,刚才的哪个有点 错误,现更正如下:

b*(a*b|(b?a)+)
cbc 2005-03-27
  • 打赏
  • 举报
回复
cbc 2005-03-27
  • 打赏
  • 举报
回复
jtime(flytime):
你的不可以匹配空串啊


我写的一个较笨重,你看一下

(aaa|aab|aba|baa|bab|bba|bbb)*
  • 打赏
  • 举报
回复
TO 长弓手
1.对于你的来说 你的能匹配ba 吗?
好象是不可以的
2.还有应该是不可以出现空串的 E是不行的
3.就算可以有空串,你的 (a*b)* 仍然有可能形成 abb子串 既 ( a (1次) b )( (0次a) b )

如果容许出现空串的话 那么你的可以改成 b*(a+b)*a* 就可以了

我的一点看法,如有不对之处还请指出,谢谢.
  • 打赏
  • 举报
回复
b+|(b*a+)|b*(a+b)+
arrowcy 2005-03-27
  • 打赏
  • 举报
回复
b*(a*b)*
arrowcy 2005-03-27
  • 打赏
  • 举报
回复
不含abb,那么一旦出现了a,后面就再也不能有连续两个b了,所以,后面只能是(ab)*,前面可以有多个b,多个a
加载更多回复(1)
课程介绍:第一章:正则表达式(regularexpression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。第二章:http协议是一种无状态协议,不记录用户行为,我们可以利用cookie记录数据,方便用户操作,提升用户体验。第三章:ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。第四章:本章主要讲解JS动画原理、动画函数封装和轮播。第五章:本章主要讲解面向对象、构造函数和继承、原型链和继承。第六章:本节课程主要讲解了什么是Ajax、如何使用Ajax发送get请、如何使用Ajax发送post请、JSON数据格式、回调地狱、Promise和Ajax的同源策略、跨域请。第七章:本章主要讲解html、val、attr、prop、class、全选框、动画、节点遍历、ajax、sonp、event、multiple、plugin、plugin、magnifier。第八章:本章主要讲解UML类图、单例模式、工厂模式、策略模式、代理模式、观察者模式。第九章:本章主要讲解为什么要模块化、原生JS中,模块的写法、AMD、CommonJS&Webpack。第十章:本节课程主要讲解了服务器安装环境配置、端口及ip基本常识、简单认识PHP(helloworld)、基本语法和动态网页原理。第十一章:本节课程主要讲解了什么是SASS、SASS的预处理、ass语法(变量、嵌套、导入、mixin、扩展、function、expression)。第十二章:本节课程主要讲解了什么是GULP、GULP环境配置、GULP基本使用及GULP的插件安装与使用。

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧