У меня есть строка, которую пользователь ввел, и у меня есть мои регулярные выражения в моей базе данных, и я могу проверить входную строку по этим регулярным выражениям в пределах базы данных.
Но теперь мне нужно добавить еще один столбец в моей базе данных, который будет содержать другое регулярное выражение, но я хочу использовать тот же цикл for, чтобы проверить входную строку снова в моем новом регулярном выражении, а также в конце моего первого цикла. Но я хочу использовать это новое выражение для той же строки
т.е.
\\D\\W\\D
<- первое выражение <br>
\\d
<- второе выражение, которое я хочу использовать после того, как первое выражение закончится </p>
- использовать регулярные выражения из базы данных для входной строки, которая работает
- добавить новое регулярное выражение и корпоративное выражение в одном и том же цикле и проверить по одной и той же строке - не работает
мой код выглядит следующим образом
std::string errorMessages [2][2] = {
{
"Correct .R\n",
},
{
"Free text characters out of bounds\n",
}
};
for(int i = 0; i < el.size(); i++)
{
if(el[i].substr(0,3) == ".R/")
{
DCS_LOG_DEBUG("--------------- Validating .R/ ---------------");
output.push_back("\n--------------- Validating .R/ ---------------\n");
str = el[i].substr(3);
split(st,str,boost::is_any_of("/"));
DCS_LOG_DEBUG("main loop done");
for (int split_id = 0 ; split_id < splitMask.size() ; split_id++ )
{
boost::regex const string_matcher_id(splitMask[split_id]);
if(boost::regex_match(st[split_id],string_matcher_id))
{
a = errorMessages[0][split_id];
DCS_LOG_DEBUG("" << a );
}
else
{
a = errorMessages[1][split_id];
DCS_LOG_DEBUG("" << a);
}
output.push_back(a);
}
DCS_LOG_DEBUG("Out of the loop 2");
}
}
Как я могу извлечь свое регулярное выражение из базы данных, и после завершения этого цикла использовать это новое регулярное выражение для той же строки.
STRING IS - shamari
регулярное выражение, которое я хочу добавить - "\\d"
задавайте мне любые вопросы, если вы не понимаете