사용자가 입력 한 문자열이 있고 데이터베이스에 내 정규 표현식이 있으며 데이터베이스 내의 해당 정규 표현식에 대해 입력 문자열을 검사 할 수 있습니다.많은 다른 정규 표현식에 대한 문자열을 한 번에 확인하고 싶습니다.
하지만 다른 정규 표현식을 포함 할 데이터베이스 내에서 다른 열을 추가해야하지만 동일한 반복문을 사용하여 입력 문자열을 다시 새 정규 표현식뿐만 아니라 첫 번째 루프의 끝에서 확인하고 싶습니다. 첫 번째 표현식
\\d
< - -하지만 같은 문자열
즉
\\D\\W\\D
<에 대한 새로운 표현을 사용하려면 내가 처음 발현 후 사용하고자하는 두 번째 표현식
- 이상
- 동일한 루프 내에서 동일한 정규 표현식을 추가하고 동일한 문자열에 대해 확인하십시오 - 작동하지 않음 나는 데이터베이스에서 내 정규 표현식을 검색 할 수있는 방법
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");
}
}
을 다음과 같이
내 코드는이 루프 후 사용에 동일한 문자열에 대한 새로운 정규식을 완료했습니다.
문자열입니다 - 당신이
더 많은 코드를 추가하려고하는 것 같습니다. 쓰시겠습니까? 귀하의 질문은 퀘스트처럼 들립니다. "내 코드에서 두 가지 이상을 어떻게 수행합니까?" – tenfour
그래, 난 더 많은 코드를 추가 할 필요가 있지만 당신은 루프를 사용하여 정규식과 입력 문자열을 통해 루프를 사용하여 볼 수 있지만 그저 새로운 정규식을 추가하고 싶지만 그 결과는 제목별로 구분하여 표시됩니다. – CodersSC