zoukankan      html  css  js  c++  java
  • 关键词过滤器

    关键词过滤器有两个功能:一个是多关键词组合功能并去掉重复项;一个是查找遗漏的关键词

    核心代码:

    组合功能:

    //组合
        UpdateData(TRUE);
        CString space 
    = _T(""); //间隔
        CString firstKeyword = _T("");
        CString resualt
    =_T("");
        CString sencondKeyword  
    = _T("");
        
    if(mSpace.GetCheck()==BST_CHECKED)
        {
            space
    =_T(" "); //空格
        }
        
    int lineCount=0//前项的行数
        int slineCount = mKeyword2.GetLineCount(); //获得后项的行数
        if(lineCount>0)
        {
            
            
    //MessageBox(sencondKeyword);
        }
        lineCount 
    = mKeyword1.GetLineCount(); //获得前项的行数
        int i,j;
        
    for(j=0;j<slineCount;j++)
        {
            
    int slen = mKeyword2.LineLength(mKeyword2.LineIndex(j));

            mKeyword2.GetLine(j,sencondKeyword.GetBuffer(slen),slen);
            sencondKeyword.ReleaseBuffer(slen);
            
    for(i=0;i<lineCount;i++)
            {
                
    int len = mKeyword1.LineLength(mKeyword1.LineIndex(i));

                mKeyword1.GetLine(i,firstKeyword.GetBuffer(len),len);
                
    //MessageBox(_T("行")+);
                firstKeyword.ReleaseBuffer(len);
                
    if(firstKeyword != sencondKeyword)
                {
                    resualt 
    = resualt+firstKeyword+space+sencondKeyword+_T("\r\n");
                }
                

            }
        }
        
    //MessageBox(resualt);
        SetDlgItemText(IDC_EDIT3, resualt);

    查找遗漏:

    //查找遗漏关键词
        UpdateData(TRUE);
        
        CString firstKeyword 
    = _T("");
        CString resualt
    =_T("");
        CString sencondKeyword  
    = _T("");
        
        
    int lineCount=0//前项的行数
        int slineCount = mKeyword2.GetLineCount(); //获得后项的行数
        if(lineCount>0)
        {
            
            
    //MessageBox(sencondKeyword);
        }
        lineCount 
    = mKeyword1.GetLineCount(); //获得前项的行数
        int i,j;
        
    for(j=0;j<lineCount;j++)
        {
            
    int len = mKeyword1.LineLength(mKeyword1.LineIndex(j));

            mKeyword1.GetLine(j,firstKeyword.GetBuffer(len),len);
            firstKeyword.ReleaseBuffer(len);
            
    for(i=0;i<slineCount;i++)
            {
                
    int slen = mKeyword2.LineLength(mKeyword2.LineIndex(i));

                mKeyword2.GetLine(i,sencondKeyword.GetBuffer(slen),slen);
                
    //MessageBox(_T("行")+);
                sencondKeyword.ReleaseBuffer(slen);
                
    if(firstKeyword != sencondKeyword)
                {
                    resualt 
    = resualt+firstKeyword+_T("\r\n");
                }
                
    else
                {
                    txtKeyword1.Replace(firstKeyword
    +_T("\r\n"),_T(""));
                    
    /*txtKeyword2.Replace(sencondKeyword+_T("\r\n"),_T(""));
                    UpdateData(TRUE);
    */
                }
                

            }
        }
        
    //MessageBox(resualt);
        SetDlgItemText(IDC_EDIT3, txtKeyword1);

    可执行文件见:http://hn911.download.csdn.net/

  • 相关阅读:
    一、汇编基础知识
    PHP RabbitMQ消息队列演示代码
    PHP CentOS下安装PHP及部署ThinkPHP
    MySQL CentOS下安装MySQL
    ThinkPHP 对接支付宝支付接口
    ThinkPHP 获取当前页面完整的URL地址
    前端 Validform.js属性,用法及Ajax提交简介
    PHP 配置Xdebug调试工具
    ThinkPHP 原生分页功能改进,更好用更美观
    ThinkPHP 使用第三方phpmailer库发送邮件
  • 原文地址:https://www.cnblogs.com/911/p/1698432.html
Copyright © 2011-2022 走看看