免费注册 查看新帖 |

Chinaunix

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

请教一个字符串比较的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-18 10:29 |只看该作者 |倒序浏览
我想用perl写一段小程序比较软件的版本.
比如说, 一个软件有两个版本,
2.10-9
2.10-10
第二个版本比第一个新, 但是我直接有gt比较, 结果是相反的. 有没有什么简单的办法, 得到正确的结果呢?

论坛徽章:
0
2 [报告]
发表于 2004-06-18 13:36 |只看该作者

请教一个字符串比较的问题

如果是具体的格式,那就取“-”后面的数字,然后进行比较可以不?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2004-06-19 23:22 |只看该作者

请教一个字符串比较的问题

2.10-9
2.10-10


利用 ($t1,$t2,$t3) = $version=~ /(\d+)\.(\d+)-(\d+)/;
$num1 = $t1.$t2.$t3;
取得num1與num2兩個數字..就可以比大小了..

论坛徽章:
0
4 [报告]
发表于 2004-06-21 08:44 |只看该作者

请教一个字符串比较的问题

先谢谢大家. 我想做的是写一个script去管理本地的debian的软件包,  当下载新的版本后, 删除旧的版本. debian包的取名方法比较恶心,  比如有一个包叫做: libdps-dev_4.3.0.dfsg.1-4_sparc.deb, 其中4.3.0.dfsg.1-4是版本.
所以, 中间的"."的个数是不定的, 而且夹着text(同一软件的text是一样的不影响比较, 对程序来说是噪音需要剃掉). 各位有什么好的主意吗?

论坛徽章:
0
5 [报告]
发表于 2004-06-22 11:12 |只看该作者

请教一个字符串比较的问题

那两个下划线应该是固定的吧,如果是这样就好办了

论坛徽章:
0
6 [报告]
发表于 2004-06-23 19:25 |只看该作者

请教一个字符串比较的问题

先找出所有版本格式的“字串共性”之后再比较好处理一些,如 jeff_gu说的,下划线之间或"**"之间是固定格式

论坛徽章:
0
7 [报告]
发表于 2004-07-01 13:43 |只看该作者

请教一个字符串比较的问题

对头,这种事情找好固定的规律,再在匹配的时候多考虑些,免得造成损失。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP