Пример #1
0
BOOL WINAPI _IsRegMatchA(CHAR* lpszPatt,CHAR* lpszStr)
{
	CRegexpA Reg(lpszPatt);

	auto mr=Reg.Match(lpszStr);
	return mr.IsMatched();
}
Пример #2
0
bool BaseChecker::operator()(feature::TypesHolder const & types) const
{
  for (uint32_t t : types)
    if (IsMatched(t))
      return true;

  return false;
}
Пример #3
0
bool BaseChecker::operator()(vector<uint32_t> const & types) const
{
  for (size_t i = 0; i < types.size(); ++i)
  {
    if (IsMatched(types[i]))
      return true;
  }
  return false;
}
Пример #4
0
MRESULT WINAPI _RegMatchA(CRegexpA* lpReg, CHAR* lpszStr, int nStart, LPREGEXP_RESULT lprRslt)
{
	auto mr=lpReg->Match(lpszStr,nStart);
	lprRslt->bIsMatched=mr.IsMatched();
	if(!lprRslt->bIsMatched)
		return E_SUCCESS;

	lprRslt->rBase.nLeft=mr.GetStart();
	lprRslt->rBase.nRight=mr.GetEnd();

	auto mx=REG_MAX_GROUPS>mr.MaxGroupNumber()?mr.MaxGroupNumber():REG_MAX_GROUPS;
	lprRslt->nGroups=mx;

	for(int i=0;i<=mx;i++)
	{
		lprRslt->rGroups[i].nLeft=mr.GetGroupStart(i+1);
		lprRslt->rGroups[i].nRight=mr.GetGroupEnd(i+1);
	}
	return E_SUCCESS;
}