您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ FullTextMatch函数代码示例

51自学网 2021-06-01 20:49:08
  C++
这篇教程C++ FullTextMatch函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中FullTextMatch函数的典型用法代码示例。如果您正苦于以下问题:C++ FullTextMatch函数的具体用法?C++ FullTextMatch怎么用?C++ FullTextMatch使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了FullTextMatch函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: MatchInAlphaList

int MatchInAlphaList(AlphaList *al, char *string){    Item *ip;    int i = (int) *string;    if (isalnum(i) || *string == '_')    {        for (ip = al->list[i]; ip != NULL; ip = ip->next)        {            if (FullTextMatch(string, ip->name))            {                return true;            }        }    }    else    {        // We don't know what the correct hash is because the pattern in vague        for (i = 0; i < CF_ALPHABETSIZE; i++)        {            for (ip = al->list[i]; ip != NULL; ip = ip->next)            {                if (FullTextMatch(string, ip->name))                {                    return true;                }            }        }    }    return false;}
开发者ID:fbettag,项目名称:core,代码行数:33,


示例2: DefaultVarPromise

void DefaultVarPromise(Promise *pp){    char *regex = GetConstraintValue("if_match_regex", pp, CF_SCALAR);    Rval rval;    enum cfdatatype dt;    Rlist *rp;    bool okay = true;    dt = GetVariable("this", pp->promiser, &rval);    switch (dt)    {    case cf_str:    case cf_int:    case cf_real:        if (regex && !FullTextMatch(regex,rval.item))        {            return;        }        if (regex == NULL)        {            return;        }        break;    case cf_slist:    case cf_ilist:    case cf_rlist:        if (regex)        {            for (rp = (Rlist *) rval.item; rp != NULL; rp = rp->next)            {                if (FullTextMatch(regex,rp->item))                {                    okay = false;                    break;                }            }            if (okay)            {                return;            }        }        break;    default:        break;    }    DeleteScalar(pp->bundle, pp->promiser);    ConvergeVarHashPromise(pp->bundle, pp, true);}
开发者ID:xrg,项目名称:cfengine-core,代码行数:59,


示例3: SelectOwnerMatch

static int SelectOwnerMatch(char *path, struct stat *lstatptr, Rlist *crit){    AlphaList leafattrib;    Rlist *rp;    char ownerName[CF_BUFSIZE];    int gotOwner;    InitAlphaList(&leafattrib);#ifndef MINGW                   // no uids on Windows    char buffer[CF_SMALLBUF];    sprintf(buffer, "%jd", (uintmax_t) lstatptr->st_uid);    PrependAlphaList(&leafattrib, buffer);#endif /* MINGW */    gotOwner = GetOwnerName(path, lstatptr, ownerName, sizeof(ownerName));    if (gotOwner)    {        PrependAlphaList(&leafattrib, ownerName);    }    else    {        PrependAlphaList(&leafattrib, "none");    }    for (rp = crit; rp != NULL; rp = rp->next)    {        if (EvalFileResult((char *) rp->item, &leafattrib))        {            CfDebug(" - ? Select owner match/n");            DeleteAlphaList(&leafattrib);            return true;        }        if (gotOwner && FullTextMatch((char *) rp->item, ownerName))        {            CfDebug(" - ? Select owner match/n");            DeleteAlphaList(&leafattrib);            return true;        }#ifndef MINGW        if (FullTextMatch((char *) rp->item, buffer))        {            CfDebug(" - ? Select owner match/n");            DeleteAlphaList(&leafattrib);            return true;        }#endif /* NOT MINGW */    }    DeleteAlphaList(&leafattrib);    return false;}
开发者ID:xrg,项目名称:cfengine-core,代码行数:55,


示例4: SelectOwnerMatch

static int SelectOwnerMatch(EvalContext *ctx, char *path, struct stat *lstatptr, Rlist *crit){    Rlist *rp;    char ownerName[CF_BUFSIZE];    int gotOwner;    StringSet *leafattrib = StringSetNew();#ifndef __MINGW32__                   // no uids on Windows    char buffer[CF_SMALLBUF];    snprintf(buffer, CF_SMALLBUF, "%jd", (uintmax_t) lstatptr->st_uid);    StringSetAdd(leafattrib, xstrdup(buffer));#endif /* __MINGW32__ */    gotOwner = GetOwnerName(path, lstatptr, ownerName, sizeof(ownerName));    if (gotOwner)    {        StringSetAdd(leafattrib, xstrdup(ownerName));    }    else    {        StringSetAdd(leafattrib, xstrdup("none"));    }    for (rp = crit; rp != NULL; rp = rp->next)    {        if (EvalFileResult((char *) rp->item, leafattrib))        {            Log(LOG_LEVEL_DEBUG, "Select owner match");            StringSetDestroy(leafattrib);            return true;        }        if (gotOwner && (FullTextMatch(ctx, RlistScalarValue(rp), ownerName)))        {            Log(LOG_LEVEL_DEBUG, "Select owner match");            StringSetDestroy(leafattrib);            return true;        }#ifndef __MINGW32__        if (FullTextMatch(ctx, RlistScalarValue(rp), buffer))        {            Log(LOG_LEVEL_DEBUG, "Select owner match");            StringSetDestroy(leafattrib);            return true;        }#endif /* !__MINGW32__ */    }    StringSetDestroy(leafattrib);    return false;}
开发者ID:nperron,项目名称:core,代码行数:54,


示例5: SelectGroupMatch

static int SelectGroupMatch(struct stat *lstatptr, Rlist *crit){    AlphaList leafattrib;    char buffer[CF_SMALLBUF];    struct group *gr;    Rlist *rp;    InitAlphaList(&leafattrib);    sprintf(buffer, "%jd", (uintmax_t) lstatptr->st_gid);    PrependAlphaList(&leafattrib, buffer);    if ((gr = getgrgid(lstatptr->st_gid)) != NULL)    {        PrependAlphaList(&leafattrib, gr->gr_name);    }    else    {        PrependAlphaList(&leafattrib, "none");    }    for (rp = crit; rp != NULL; rp = rp->next)    {        if (EvalFileResult((char *) rp->item, &leafattrib))        {            CfDebug(" - ? Select group match/n");            DeleteAlphaList(&leafattrib);            return true;        }        if (gr && FullTextMatch((char *) rp->item, gr->gr_name))        {            CfDebug(" - ? Select owner match/n");            DeleteAlphaList(&leafattrib);            return true;        }        if (FullTextMatch((char *) rp->item, buffer))        {            CfDebug(" - ? Select owner match/n");            DeleteAlphaList(&leafattrib);            return true;        }    }    DeleteAlphaList(&leafattrib);    return false;}
开发者ID:xrg,项目名称:cfengine-core,代码行数:48,


示例6: SelectIsSymLinkTo

static int SelectIsSymLinkTo(char *filename,struct Rlist *crit){#ifndef MINGW  char buffer[CF_BUFSIZE];  struct Rlist *rp;for (rp = crit; rp != NULL; rp = rp->next)   {   memset(buffer,0,CF_BUFSIZE);      if (readlink(filename,buffer,CF_BUFSIZE-1) == -1)      {      CfOut(cf_error,"readlink","Unable to read link %s in filter",filename);      return false;            }   if (FullTextMatch(rp->item,buffer))      {      return true;      }   }#endif  /* NOT MINGW */return false;      }
开发者ID:Kegeruneku,项目名称:Cfengine-debian,代码行数:25,


示例7: CheckParseClass

int CheckParseClass(char *lval, char *s, const char *range){    char output[CF_BUFSIZE];    if (s == NULL)    {        return false;    }    CfDebug("/nCheckParseClass(%s => %s/%s)/n", lval, s, range);    if (strlen(range) == 0)    {        return true;    }    if (FullTextMatch(range, s))    {        return true;    }    snprintf(output, CF_BUFSIZE, "Class item on rhs of lval /'%s/' given as { %s } is out of bounds (should match %s)",             lval, s, range);    ReportError(output);    return false;}
开发者ID:dnaeon,项目名称:core,代码行数:26,


示例8: IsMatchItemIn

int IsMatchItemIn(EvalContext *ctx, Item *list, const char *item)/* Solve for possible regex/fuzzy models unified */{    Item *ptr;    if ((item == NULL) || (strlen(item) == 0))    {        return true;    }    for (ptr = list; ptr != NULL; ptr = ptr->next)    {        if (FuzzySetMatch(ptr->name, item) == 0)        {            return (true);        }        if (IsRegex(ptr->name))        {            if (FullTextMatch(ctx, ptr->name, item))            {                return (true);            }        }    }    return (false);}
开发者ID:lpefferkorn,项目名称:core,代码行数:28,


示例9: SelectLastItemMatching

int SelectLastItemMatching(EvalContext *ctx, const char *regexp, Item *begin, Item *end, Item **match, Item **prev){    Item *ip, *ip_last = NULL, *ip_prev = CF_UNDEFINED_ITEM;    *match = CF_UNDEFINED_ITEM;    *prev = CF_UNDEFINED_ITEM;    for (ip = begin; ip != end; ip = ip->next)    {        if (ip->name == NULL)        {            continue;        }        if (FullTextMatch(ctx, regexp, ip->name))        {            *prev = ip_prev;            ip_last = ip;        }        ip_prev = ip;    }    if (ip_last)    {        *match = ip_last;        return true;    }    return false;}
开发者ID:lpefferkorn,项目名称:core,代码行数:31,


示例10: SelectNextItemMatching

int SelectNextItemMatching(const char *regexp, Item *begin, Item *end, Item **match, Item **prev){    Item *ip_prev = CF_UNDEFINED_ITEM;    *match = CF_UNDEFINED_ITEM;    *prev = CF_UNDEFINED_ITEM;    for (Item *ip = begin; ip != end; ip = ip->next)    {        if (ip->name == NULL)        {            continue;        }        if (FullTextMatch(regexp, ip->name))        {            *match = ip;            *prev = ip_prev;            return true;        }        ip_prev = ip;    }    return false;}
开发者ID:fkoner,项目名称:core,代码行数:26,


示例11: SelectExecRegexMatch

static int SelectExecRegexMatch(char *filename, char *crit, char *prog){    char line[CF_BUFSIZE];    FILE *pp;    char buf[CF_MAXVARSIZE];// insert real value of $(this.promiser) in command    ReplaceStr(prog, buf, sizeof(buf), "$(this.promiser)", filename);    ReplaceStr(prog, buf, sizeof(buf), "${this.promiser}", filename);    if ((pp = cf_popen(buf, "r")) == NULL)    {        CfOut(cf_error, "cf_popen", "Couldn't open pipe to command %s/n", buf);        return false;    }    while (!feof(pp))    {        line[0] = '/0';        CfReadLine(line, CF_BUFSIZE, pp);       /* One buffer only */        if (FullTextMatch(crit, line))        {            cf_pclose(pp);            return true;        }    }    cf_pclose(pp);    return false;}
开发者ID:xrg,项目名称:cfengine-core,代码行数:32,


示例12: SelectGroupMatch

static int SelectGroupMatch(EvalContext *ctx, struct stat *lstatptr, Rlist *crit){    char buffer[CF_SMALLBUF];    struct group *gr;    Rlist *rp;    StringSet *leafattrib = StringSetNew();    snprintf(buffer, CF_SMALLBUF, "%jd", (uintmax_t) lstatptr->st_gid);    StringSetAdd(leafattrib, xstrdup(buffer));    if ((gr = getgrgid(lstatptr->st_gid)) != NULL)    {        StringSetAdd(leafattrib, xstrdup(gr->gr_name));    }    else    {        StringSetAdd(leafattrib, xstrdup("none"));    }    for (rp = crit; rp != NULL; rp = rp->next)    {        if (EvalFileResult((char *) rp->item, leafattrib))        {            Log(LOG_LEVEL_DEBUG, "Select group match");            StringSetDestroy(leafattrib);            return true;        }        if (gr && (FullTextMatch(ctx, (char *) rp->item, gr->gr_name)))        {            Log(LOG_LEVEL_DEBUG, "Select group match");            StringSetDestroy(leafattrib);            return true;        }        if (FullTextMatch(ctx, (char *) rp->item, buffer))        {            Log(LOG_LEVEL_DEBUG, "Select group match");            StringSetDestroy(leafattrib);            return true;        }    }    StringSetDestroy(leafattrib);    return false;}
开发者ID:nperron,项目名称:core,代码行数:47,


示例13: MatchRegion

int MatchRegion(EvalContext *ctx, const char *chunk, const Item *begin, const Item *end, bool regex)/*  Match a region in between the selection delimiters. It is  called after SelectRegion. The end delimiter will be visible  here so we have to check for it. Can handle multi-line chunks*/{    const Item *ip = begin;    char buf[CF_BUFSIZE];    int lines = 0;    for (const char *sp = chunk; sp <= chunk + strlen(chunk); sp++)    {        memset(buf, 0, CF_BUFSIZE);        sscanf(sp, "%[^/n]", buf);        sp += strlen(buf);        if (ip == NULL)        {            return false;        }        if (!regex && strcmp(buf, ip->name) != 0)        {            return false;        }        if (regex && !FullTextMatch(ctx, buf, ip->name))        {            return false;        }        lines++;        // We have to manually exclude the marked terminator        if (ip == end)        {            return false;        }        // Now see if there is more        if (ip->next)        {            ip = ip->next;        }        else                    // if the region runs out before the end        {            if (++sp <= chunk + strlen(chunk))            {                return false;            }            break;        }    }    return lines;}
开发者ID:lpefferkorn,项目名称:core,代码行数:59,


示例14: sizeof

void CFulEditCtrl::Colorize(const tstring& aLine, int begin) {	CHARFORMAT2 cf;	cf.cbSize = sizeof(CHARFORMAT2);		ColorList *cList = HighlightManager::getInstance()->getList();	int end = GetTextLengthEx(GTL_NUMCHARS);		SetSel(begin, end);	//otroligt fulhack, m
C++ FunctionCall1函数代码示例
C++ FullCircles函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。