分页: 1 / 1

如何让 perl 的 split 使用多个分隔符

发表于 : 2010-10-17 14:31
tangkou2
如何让 perl 的 split 使用多个分隔符
例如,将字符串“1.2,3_4__5:6”分隔为"1" "2" "3" "4" "5" "6",也就是说要将“.”“,”“_”(空格)“__”(两个空格)和“:”均作为分隔符。

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2010-10-18 10:38
gzbao9999

代码: 全选

#!/usr/bin/perl
$line="1.2,3 4  5:6";
print $line;
print "\n";
@array = split(/\s+|[.,:]/,$line);
foreach (@array){
	print;
#print "\n";
}

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2010-10-18 11:04
trigger
echo "1.2,3_4__5:6"|grep -o [0-9]
1
2
3
4
5
6

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2010-10-18 13:55
tangkou2
搞定,十分感谢

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2010-10-18 21:40
tusooa
搞清split的语法。

代码: 全选

split regex, string; # return an array
正则里面想写什么都行。

代码: 全选

/([,\.:]| {1,2})/

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2011-06-06 23:48
dxjdhm
#!/usr/bin/perl
$_="1,2.3_4:5";
@_=split/[,.:_ ]/,$_;
print"@_\n";

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2011-06-07 10:02
eexpress
多看perldoc -f split

Re: 如何让 perl 的 split 使用多个分隔符

发表于 : 2011-06-12 11:55
lexdene
trigger 写了:echo "1.2,3_4__5:6"|grep -o [0-9]
1
2
3
4
5
6
我是来膜拜grep的。