perl 字符分割问题
时间:2010-12-06
来源:互联网
- #!/usr/bin/perl -w
- use strict;
-
- my $MYOFFICE_LIST = "192.168.100.113|D:\\Myoffice,192.168.100.113|E:\\Myoffice";
-
- my (@A) = split /,/ => $MYOFFICE_LIST;
- my (@ip,@path) = split /|/ => @A;
-
- foreach my $i (@ip){
- print $i,"\n";
- }
如何将IP分割到@ip ,路径分割到@path 我这样分割结果变成了2. 高手麻烦帮改改
作者: mitmax 发布时间: 2010-12-06
用正则啊,据说比split效率还高~
作者: x9x9 发布时间: 2010-12-06
- #!/usr/bin/perl -w
- use strict;
-
- my $MYOFFICE_LIST = "192.168.100.113|D:\\Myoffice,192.168.100.113|E:\\Myoffice";
-
- my @a = split /,/,$MYOFFICE_LIST;
-
- foreach my $m (@a)
- {
- my ($ip,$path)=split /\|/,$m;
- print "$ip,$path\n";
- }
作者: scrit 发布时间: 2010-12-06
本帖最后由 wfnh 于 2010-12-06 16:57 编辑
split是分割字符村的···不是分割数组的···
你可以用下面代替
复制代码
当然,可以用一条正则搞定
split是分割字符村的···不是分割数组的···
你可以用下面代替
- my @ip = map{(split /\|/)[0]} split /,/ => $MYOFFICE_LIST;
作者: wfnh 发布时间: 2010-12-06
QUOTE:
split是分割字符村的···不是分割数组的···
你可以用下面代替当然,可以用一条正则搞定
wfnh 发表于 2010-12-06 16:55
你可以用下面代替当然,可以用一条正则搞定
wfnh 发表于 2010-12-06 16:55
好方法,我以前没用过map ,不了解怎么用

作者: scrit 发布时间: 2010-12-06
其实split还可以这样用···
ps:正则随便的
复制代码
ps:正则随便的
- my (@ip,@path);
- /\d+/ ? push @ip,$_ : push @path,$_ for (split /[,|]/ => $MYOFFICE_LIST);
作者: wfnh 发布时间: 2010-12-06
学习了学习了。。。我自己写的要9行。。。。嘿嘿,我学习的积极性很高滴,有没有师傅带啊?
作者: homedw 发布时间: 2010-12-06
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28