作者rkcity (喵。罐头)
看板Perl
标题Re: [问题] 列的长度值
时间Thu Nov 4 19:01:15 2010
※ 引述《sqrt1089 (李崩子)》之铭言:
: 假设我也一个txt
: 读档後一部分是
: a 0123 qwwe10 qqweggr
: b 0156 w12e
: c 0121 wwerf dqwfw
: 假设我输入 a 要怎麽得到 4这个值(输入b得到3,输入c得到4)
: 就是a那行的字串数 a,0123,qwwe10,qwwe10,别为4个字串
: $array=split/\t/;
: if($array[0] eq $input){
: ..
: .
: 再来就不会了,囧
: 我有找到 #17k5Lsfb这篇文章
: 他的$array[n]是代表第n列
: 就是的$array[0] = a 0123 qwwe10 qqweggr
: $array[1] = b 0156 w12e
: 可是我之前做题目
: $array[0]是代表第一行说就是 a b c;
while( <TXT> ){
@array = split( /\t/ );
# 每次loop @array会是每一列的内容
# Ex: @array = ( 'a', '0123', 'qwwe10', 'qqweggr' );
if( $array[0] eq $input ){
# $array[0] 也就是第一栏的资料
print scalar( @array );
# scalar传回纯量个数
last;
# 还可以加个last跳出回圈 ._."
}
}
--
◣ █◤ ◥ ◥ ◤ ◆
◥ ◣ ◢ ◣ ◢ █◣ ? ◣ ◢ ◣ ◆
ψrkcity
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 58.114.146.67
※ 编辑: rkcity 来自: 58.114.146.67 (11/04 19:01)
1F:推 sqrt1089:真高手! 11/04 19:52
2F:→ rkcity:这.... 11/04 20:07
3F:推 sqrt1089:在发问一下,因为我的TXT是从excel转来了,所以他空白处 11/08 13:44
4F:→ sqrt1089:是Tab键的空白,有啥方法不要算到空白地方?Y 11/08 13:45
5F:→ rkcity:蛤? 你不是用\t做split了吗? 11/08 14:07
6F:推 sqrt1089:是阿,可是从excel转来,长度不足的,自动补tab空白 11/08 20:19
7F:→ sqrt1089:就是假设全长是15个,本来2个的会有多13个TAB,不过我把 11/08 20:20
8F:→ sqrt1089:他补0了然後再把有多少0算出来再相减即可 11/08 20:20