这两天写了个采集网页的小tool,遇到个问题是如何用正则表达式排除特定内容。 我要采集一个网页的文章部分,我要替换掉一些不想要的标签为空,比如超链接,图片标签还有其他一些不想要的。。。 但是,我要保留这个段落标签,何解?经过搜索,确定用如下方法,去掉除 以外的其他html标签,主要是这样成对闭合的标签。 ?!是指排除,不匹配 p|(/p)就是或的意思啦。
Read more分类: mfc vc++
vc++的一些基本知识
vc-实现文件的下传下载的进度显示-自msdn
//我给个FTP下载的提示吧: CInternetSession session; CFtpConnection *pFtp=session.GetFtpConnection(FTP服务器地址,用户名,密码); CInternetFile *pFtpFile=pFtp->OpenFile(文件路径); CFile file; int DownLength=0;//已经下载了的数据长度 if(目的目录下没有指定文件)//从头开始下载 { file.Open(目的文件路径,CFile::modeCreate|CFile::modeWrite); } else//断点续传 { file.Open(目
Read morevc-ftp上传文件例子教程
直接上代码吧: void CftptestDlg::OnBnClickedButtonGo() { // TODO: 在此添加控件通知处理程序代码 //开始上传 CInternetSession CIS; CFtpConnection *ftp = CIS.GetFtpConnection(“server”,”username”,”ps”,21); //建立文件夹 //ftp->CreateDirectory(“fffff”); CString strLocalFile; CFile fUpload(“test.zip”,CFile::modeRead|CFile::typeBinary);
Read more【vc】【mfc】链接操作mysql教程
vc如何链接mysql数据库,这篇文章就是一个简单的示例。 mysql的头文件,lib,dll文件,我是用的wamp集成包的,msyql版本是 mysql5.6.17 。之前也试过其他集成包,发现mysql的一些文件是没有的(不是精简掉了),所以建议下wamp吧。wamp sourceforge 官网:http://sourceforge.net/projects/wampserver/files/WampServer%202/WampServer%202.1/ 找到mysql文件夹下的【include】文件夹,放到我们的vc工程目录下 设置vc项目属性,添加包含。如下图 在用到msyql的
Read morevc如何正则匹配出多条相同类似记录-[regex]
因为我对这个cmathresult模版类不懂,所以我的方法就是,每找到一个匹配项,那就把他替换为空,这样循环下去,直到得不到正则匹配项为止。 //just for google bool CURLCollectorDlg::GetMatchCString2(CString strSearch, CString strBegin, CString strEnd ,CStringArray &arr) { CString strReturn; //MessageBox(“str” + strSearch); std::string str(strSearch.GetBuffer()); //正则规
Read moremfc-vc++-如何使用正则过滤函数
这个函数可以正则匹配出一段文本,比如我们获取了一个网站的一个页面的txet文本后,可以利用本函数方便的取出我们想要的目标字段,比如,这个页面的title,keywords,等目标元素。 要使用此函数,需要你的vc工程是vs2010以上版本(从2010版本开始,微软才内置了“regex.h”的),首先包含头文件 #include <regex> 函数开始 // 这是一个匹配strBegin和strEnd之间字符串的函数 //str,指定要查找的字符串 //strBegin,指定开始处的字符串 //strEnd,指定结尾处的字符串 //长度为0,说明没有匹配成功 CString CCo
Read morevc++返回一个网站网页的状态响应码-解决了设置超时不起作用的微软问题bug
//这个线程是单独为了检测openurl是否超时的子线程 DWORD WINAPI OpenURLThread( LPVOID lpParameter //thread data ) { //bOpenURLOver = false; //pdlg->AddRecord(L”子线程”); //while(!bOpenURLOver) //{ CHttpConnection * m_http; CInternetSession CIS; //strURL = L”http://www.baidu.com”; //m_http = CIS.OpenURL(strURL); //CHttpFi
Read morevc++[mfc]递归删除文件夹及其里边的文件
vc++[mfc]递归删除文件夹及其里边的文件 void DeleteDirectory(LPCTSTR path) { CFileFind findfile; CString str; str=path; if(str.Right(1)!=”\\”) str.Format(“%s\\*.*”,path); else str.Format(“%s*.*”,path); BOOL find=findfile.FindFile(str); while(find) { find=findfile.FindNextFile(); if(findfile.IsDirectory()) { if(!fin
Read morevc++-mfc-如何给一个控件添加右键弹出菜单
1.添加一个右键响应消息 //右键就显示一个菜单;包括:1、item1 2、item2 and so on…. CMenu Menu; //创建一个弹出式菜单 Menu.CreatePopupMenu(); //添加菜单项 Menu.AppendMenu(MF_STRING, ID_POP_MENU_PICS_FIND_0, “◆ 单独阅此张答题卡”); //根据当前光标位置显示菜单 CPoint Pos; GetCursorPos(&Pos); Menu.TrackPopupMenu(TPM_RIGHTBUTTON, Pos.x, Pos.y, this); Menu.DestroyMe
Read morevc++-mfc-实现网站发布文章ping百度,加快文章收录
vc++-mfc-实现网站发布文章ping百度,加快文章收录 // http 链接变量 CHttpConnection * m_http; CInternetSession CIS; CString strPingBaidu; strPingBaidu = “ping.baidu.com”; CString strPingPath; strPingPath = “ping/RPC2”; pdlg->m_http = CIS.GetHttpConnection(strPingBaidu) ; CHttpFile * pHttpFile = NULL; /* CHttpFile* OpenR
Read more