int BetweenEx(CString str, CString leftstr, CString rightstr, CStringArray &strarr)
{
int leftIndex = str.Find(leftstr);
int leftLength = leftstr.GetLength();
int rightIndex = 0;
while (leftIndex != -1)
{
rightIndex = str.Find(rightstr, leftIndex + leftLength);
if (rightIndex == -1)
break;
strarr.Add(str.Mid(leftIndex + leftLength, rightIndex - leftIndex - leftLength));
leftIndex = str.Find(leftstr, rightIndex + 1);
}
return strarr.GetSize();
}
void COpencodeDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CStringArray TmpArr;
BetweenEx(L"'1','2','3','4','5','6'", L"'", L"'", TmpArr);
for (int i = 0; i < TmpArr.GetSize(); i++)
{
AfxMessageBox(TmpArr.GetAt(i));
}
}
本文详细解读了一个用于处理复杂字符串操作的代码片段,包括查找特定子串、添加数组等关键步骤,适用于理解字符串处理算法及其实现。
1639

被折叠的 条评论
为什么被折叠?



