免费注册 查看新帖 |

Chinaunix

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

一个正则*[!0-9]*的解释? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-08-12 17:32 |只看该作者 |倒序浏览
问高手,我在一书上见到如下:case $1 in
*[!0-9]* ) echo "XXXXX" ;;
esac
这个正则为什么[!0-9]前门有个*?
以上正则可以匹配如123kfsd这样的串.
我把*删了,发现一下不能匹配了,比如123kfsd
求解释

论坛徽章:
0
2 [报告]
发表于 2010-08-12 18:08 |只看该作者
*取掉表示不是数字开头的字符串了

论坛徽章:
5
寅虎
日期:2015-01-20 09:16:52亥猪
日期:2015-01-21 14:43:44IT运维版块每日发帖之星
日期:2015-12-17 06:20:00每日论坛发贴之星
日期:2015-12-17 06:20:00每周论坛发贴之星
日期:2015-12-20 22:22:00
3 [报告]
发表于 2010-08-12 18:53 |只看该作者
O'Reilly的那本,《精通正则表达式》,看完是专家级。

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
4 [报告]
发表于 2010-08-12 20:36 |只看该作者
*表示0个以上字符

论坛徽章:
0
5 [报告]
发表于 2010-08-13 17:21 |只看该作者
*表示0个以上字符
chenyx 发表于 2010-08-12 20:36



   不是吧,*应该是贪婪表达式,只是数量而已,要是任意字符应该有.才对,所以产生疑惑.

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
6 [报告]
发表于 2010-08-13 23:12 |只看该作者
楼主补习一下正则表达式的基础知识吧。

论坛徽章:
0
7 [报告]
发表于 2010-08-14 13:50 |只看该作者
。。。。一群人都没抓到点子上

这个不是正则表达式

是通配符wildcard

*[!0-9]*中 *表示1个或者多个任意字符

正则表达式一般用grep  awk  sed而且加""才会有正则

像grep "^[^a]"
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP