论坛风格切换切换到宽版
  • 1693阅读
  • 4回复

[问题求助]awk,split函数,for循环问题 [复制链接]

上一主题 下一主题
 
发帖
1863
C币
-236116
威望
308
贡献值
1
银元
0
铜钱
4033
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
语句:awk 'BEGIN{ str="1-2-3-4-5.-6-7-8"; split(str,array,"-.") }. END{ for( i in array ) { print i"\t"array[ i ] } }' b教育

输出:
4       4
5       5
6       6
7       7
8       8
1       1
2       2
3       3

问题:i为什么不从1开始,而是从4开.始?(广告)

[ 本帖最后由 zcsga.mer .于 2009-4-27 22:19 编辑 ]           建材

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线laoli521.
发帖
1941
C币
-236087
威望
354
贡献值
1
银元
-4
铜钱
4476
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-14
split(str,array,"-")

离线喜多多.
发帖
2009
C币
-235365
威望
366
贡献值
1
银元
-5
铜钱
4496
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-14
建立一个名为b的空文件

awk 'BEGIN{str="1-2-3-4-5-6-7-8";split(str,array1,"-")}END{for(i in array1){print i"\t"array1}}' b
awk: line 1: illegal reference to array array1

[ 本帖最后由 laohuanggua 于 2009-4-27 19:01 编辑 ]

离线zd052.
发帖
2053
C币
-193435
威望
385
贡献值
1
银元
-3
铜钱
4617
人人网人气币
0
只看该作者 地板  发表于: 2010-04-14
最后应该是array[ i ],我原本写了,但i和[]间没有空格,就不见了,只有加空格才看得见,真是奇怪。

离线cylczzj.
发帖
2088
C币
-60539
威望
413
贡献值
1
银元
-4
铜钱
4850
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-14


QUOTE:原帖由 zcsgamer 于 2009-4-27 16:01 发表
语句:awk 'BEGIN{ str="1-2-3-4-5-6-7-8"; split(str,array,"-") } END{ for( i in array ) { print i"\t"array[ i ] } }' b

输出:
4       4
5       5
6       6
7       7
8       8
1       1
...

awk中使用for ( i in array)这种方式遍历数组,采用的是乱序方式,不确定顺序的

快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个