|
|
|
|
 perl的join和split问题 - yongjian [ 2005-01-07 06:15 | 487 byte(s)]
 Re: perl的join和split问题 - youzhiqingnian [ 2005-01-07 15:22 | 113 byte(s)]
 Re: perl的join和split问题 - yongjian [ 2005-01-07 23:10 | 98 byte(s)]
 Re: perl的join和split问题 - youzhiqingnian [ 2005-01-09 14:35 | 253 byte(s)]
|
|
|
|
[Original]
[Print]
[Top]
|
$_="abc abc abcabc";
@a=split;
print "the @a is @a
";
$b=join /s+/,@a;
print "the $b is $b
";
output:
---------------------------
the @a is abc abc abcabc
the $b is abc1abc1abcabc
---------------------------
上面是一个小程序,只是想熟悉一下join和split,但是当用s+来join原来的string的时候,space全变成了1了。很奇怪,哪里错了呢?
|
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
Assume we could join a group of things by an pattern, how did Perl do that? I think that's why function join does not accept pattern as its first argument - it is ambigous.
see perldoc -f join and perldoc -f split
|
|
|
----
It's better to burn out than to fade away...
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
用一次join很难实现,如果不是完全不可能的话。反正我还想
不出来用一次join如何在不同位置上用不同的值连接。join对
后面跟的第一个参数只evaluate一次。
所以你要想得到原来的值,最简单的办法就是保留split以前
的变量。
|
|
|
[Original]
[Print]
[Top]
|
|
|