You can work without iterator ("oldschool-like" if it is easier for you) like this:
vector<pair<int, string>> myVector(10);
myVector[0] = { 1, "test1" };
myVector[1] = { 2, "test2" };
myVector[2] = { 3, "test3" };
int nSize = myVector.size();
for (int i = 0; i < nSize; i++)
{
if (myVector[i].second == "test2")
myVector[i].second = "test22";
}