- 729 名前:login:Penguin mailto:sage [2008/02/28(木) 12:17:28 ID:DWKM9TyE]
- >>727
無駄にがんばってみた。PerlとかSQLiteとか使った方が絶対いい。 #!/usr/bin/awk -f BEGIN {OFS=",";} function csplit(s,a,c,f,i,j,k){delete a;for(i=j=1;;i++){ c=substr(s,i,1);if(c==""){a[k++]=substr(s,j,i-j);break;} else if(c=="\""){if(f>0){if("\""==substr(s,i+1,1))i++; else f=0;}else f=1;}else if(c==","&&f==0){a[k++]=substr(s, j,i-j);j=i+1;}}return k;} {n=csplit($0,array);print array[0],array[2],array[4];}
|

|