使用perl语言,对很大量的数字进行归类
3个回答
展开全部
my @array;
$str = "000101010101010......" ;
$str =~ s{(\d{10000})}{push (@array, $1)}eg;
$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 的数组之中
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很简单,先split ,然后将10000个push进数组。
最好有实际的数字,好操作
最好有实际的数字,好操作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说的不大清楚,是有一个数组有N个数字,然后每10000个做一个子数组么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询