33,010
社区成员
发帖
与我相关
我的任务
分享
import re
f = file("c:/a.txt", 'r')
regex = re.compile(r"^([^|]+)\|.+0$")
while True:
line = f.readline()
if len(line) == 0:
break
p = regex.match(line)
if p != None:
print p.group(1)
#include <stdio.h>
#include <string.h>
long split_c(char *inbuf,int fldno,char *outbuf)
{
int j=0,m=0;
char *p=inbuf;
while (*p)
{
if (*p!='|')
{
*(outbuf+j++)=*p++;
}
else
{
*p++;
m++;
if (m==fldno)
{
*(outbuf+j)=0x00;
return j;
}
else
{
j=0;
*outbuf=0x00;
}
}
}
if (m==fldno-1)
{
*(outbuf+j)=0x00;
}
else
{
*outbuf=0x00;
}
return 0;
}
int main(int argc,char *argv[])
{
char buff[256]={0};
char inFileName[256]={0};
char recArray1[64]={0}; //username
char recArray4[10]={0}; //flag
FILE *fpFileIn;
printf("please input filename:\n");
scanf("%s",inFileName);
fpFileIn = fopen(inFileName,"r");
if(NULL == fpFileIn)
{
printf("can't open:%s\n",inFileName);
return 1;
}
if( feof(fpFileIn) ) //empty file
{
printf("file is empty\n");
return 1;
}
while (true)//loop
{
if( feof(fpFileIn) )
{
break;
}
memset(buff,0x00,sizeof(buff));
fgets(buff,sizeof(buff),fpFileIn);
memset(recArray1,0x00,sizeof(recArray1));
split_c(buff,1,recArray1);
if( strlen(recArray1) < 3 ) //empty username
{
continue;
}
memset(recArray4,0x00,sizeof(recArray4));
split_c(buff,4,recArray4); //flag
if(recArray4[0]!='1') printf("%s\n",recArray1);
}
if(fpFileIn != NULL) fclose(fpFileIn);
return 0;
}