使用perl语言,对很大量的数字进行归类

现有一列数字,想每10000放在一个数组里,怎样设置判断条件,在线急等!!... 现有一列数字,想每10000放在一个数组里,怎样设置判断条件,在线急等!! 展开
 我来答
百度网友c9e795dda
2013-08-06 · TA获得超过5167个赞
知道大有可为答主
回答量:1128
采纳率:0%
帮助的人:1140万
展开全部
my @array;
$str = "000101010101010......" ;
$str =~ s{(\d{10000})}{push (@array, $1)}eg;
追问
能否解释一下?个人为perl白痴级别。
追答
s{(\d{10000})}{push (@array, $1)}eg;

首先, s{}{}, 或者可写成 s/// 这是一个用正则来做取代的指令, 前半节是要"搜寻"的东西, 後半节是要"取代成" 的东西

而最後 eg 的 e 代表, 将後半节的取代式以指令方式执行 ( 否则正接将找到的字串换成後半节的字串 ); g 则代表贪婪(greedy) 匹配, 一直从来源中找匹配, 正到到字串的最後 ( 否则找到一个就算 )

s{(\d{10000})}{push (@array, $1)}eg;
\d 是找数字
\d{10000} 是找连续 10000 个数字
(\d{10000}) 是找连续 10000 个数字之後, 将之存在 $1 $2 $3... ( 按出现次序 )

s{(\d{10000})}{push (@array, $1)}eg;
就是每找到 10000 个数字, 就将之存到 $1, 由後面的 指令, 将之 push 入 @array 的数组之中
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6af2b8a
2013-08-07
知道答主
回答量:14
采纳率:0%
帮助的人:6.1万
展开全部
很简单,先split ,然后将10000个push进数组。
最好有实际的数字,好操作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EvilProxy
2013-08-07 · TA获得超过294个赞
知道小有建树答主
回答量:280
采纳率:100%
帮助的人:261万
展开全部
说的不大清楚,是有一个数组有N个数字,然后每10000个做一个子数组么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式