免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1152 | 回复: 4
打印 上一主题 下一主题

关于几个正则表达式的差异,搞不懂 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-11 13:32 |只看该作者 |倒序浏览
file1文本共4行如下
a
2
get (this) and (that)
get (this and that)

grep '[a-z A-Z]*' file1  #只有字母和空格的字串
   怎么会数字2也被找出来得??
grep '(.*)' file1      #()间尽可能长字串
grep '([^)]*)' file1    #()间尽可能短字串
   这两个结果一样,但究竟有什么本质区别??

论坛徽章:
1
巳蛇
日期:2014-12-29 11:22:41
2 [报告]
发表于 2006-12-11 13:46 |只看该作者
1 *表示的是任何数量,0也是一种数量
需要改为
grep '[a-z A-Z]\+' file1
2 后两个你的意思是
找到有(,有),中间有没有东西都行的,当然两个都符合

[ 本帖最后由 bjchenxu 于 2006-12-11 13:50 编辑 ]

论坛徽章:
0
3 [报告]
发表于 2006-12-11 13:48 |只看该作者
但数字不在[]里面的啊

论坛徽章:
0
4 [报告]
发表于 2006-12-11 13:57 |只看该作者
第一个明白了
第二个还没太懂
例如  get (this) and (that)
要得到  (this)  怎么弄
要得到  (this) and (that) 怎么弄
难道不是 grep ?

论坛徽章:
0
5 [报告]
发表于 2006-12-11 14:17 |只看该作者
自己摸索了一下
在vi中
搜索时可以匹配,而不是在grep中,grep显示结果是以行来显示的
谢谢 bjchenxu
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP