Split NSString varias veces en el mismo separador

Actualmente estoy recibiendo una cadena como esta:

@"Sam|26,Hannah|22,Adam|30,Carlie|32,Jan|54"

Y lo estoy dividiendo así:

testArray = [[NSArray alloc] init];
NSString *testString = [[NSString alloc] initWithFormat:@"Sam|26,Hannah|22,Adam|30,Carlie|32,Jan|54,Steve|56,Matty|24,Bill|30,Rob|30,Jason|33,Mark|22,Stuart|54,Kevin|30"];
testArray = [testString componentsSeparatedByString:@","];

dict = [NSMutableDictionary dictionary];
for (NSString *s in testArray) {

    testArray2 = [s componentsSeparatedByString:@"|"];
    [dict setObject:[testArray2 objectAtIndex:1] forKey:[testArray2 objectAtIndex:0]];
}

Ahora recibiré una cadena como esta:

@"Sam|26|Developer,Hannah|22|Team Leader,Adam|30|Director,Carlie|32|PA,Jan|54|Cleaner"

Puedo (y cómo) usar el mismo método que el anterior para separar la cadena más de una vez usando "|" ¿separador

Respuestas a la pregunta(2)

Su respuesta a la pregunta