打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何用C编写 把文本中的网址提取出来!
from http://bbs.csdn.net/topics/390765407
beiye90 发表于: 2014-04-21 11:11:01
提取网址 
<img src="//www.baidu.com/img/bdlogo.gif" width="270" height="129">
例如这面的网址链接!

inhibitory 回复于: 2014-04-21 15:35:38
文本处理这种需求,还是用Perl,Java,C#做比较合适,它们原生对正则表达式支持

zhao4zhong1 回复于: 2014-04-21 14:26:02
#incldue <stdio.h>
#incldue <string.h>
FILE *f;
char ln[10000];
char url[4096];
char *p;
int r,n;
int main() {
    f=fopen("in.txt","r");
    if (NULL==f) {
        printf("Can not open file in.txt!\n");
        return 1;
    }
    while (1) {
        if (NULL==fgets(ln,10000,f)) break;
        p=ln;
        while (1) {
            r=sscanf(p,"<img src=\"http://%4095[^\"]\"%n",url,&n);
            if (1==r) {
                p+=n;
                printf("http://%s\n",url);
            } else (0==r) {
                p++;
            } else break;
        }
    }
    fclose(f);
    return 0;
}


gz_qmc 
纯C 
void  GetImageAddress(char *FileName)
{
    FILE   *fp;
    char   sflag[11]="<img src=\"";        //特征码
    char   dflag[11]={0};
    bool   same=false;
    char   buf[1024];
    char   ch;
    int    i;
  
    fp=fopen(FileName,"rb");
    if(NULL==fp) return;
    while(1)
    {
        dflag[9]=fgetc(fp);
        if(feof(fp)) break;
        same=true;
        for(i=0;i<10;i++)
            same&=(sflag[i]==dflag[i]);
        same&=(sflag[9]==dflag[9]);
        if(same) 
        {
            memset(dflag,0,10);
            memset(buf,0,1024);
            i=0;
            while(1)
            {
                ch=fgetc(fp);
                if(feof(fp))
                {
                    fclose(fp);
                    return;
                }
                if(ch=='\"') break;
                buf[i]=ch;
                i++;
            }
            printf("%s\n",buf);
        }
        else
        {
            for(i=0;i<9;i++)
            dflag[i]=dflag[i+1];
        }
    }
    fclose(fp);
}

应用举例 
int main()
{
    GetImageAddress("E:\\A.HTM");
    return 0;
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
mkv210_image.c
[转]c/c++文件操作-研途小憩-中国教育人博客
C语言详解——文件读取
Zlib文件压缩和解压
文件操作
熬夜整理的C/C++万字总结(五),文件操作
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服