¿Cómo analizar subetiquetas HTML en la aplicación de iPhone?

Tengo una página web HTML con muchas imágenes y contenidos en vivo. Necesito parse the data from the webpage(HTML) y mostrar en la aplicación de iPhone. Estoy usando el siguiente código para analizar el contenido HTML. Pero no sé cómo analizar las subetiquetas en las etiquetas.

{    
    NSURL *url = [NSURL URLWithString:@"http://www.samplewebpage.com/vd/t/1/830.html"]; 

    NSData *data = [[NSData alloc] initWithContentsOfURL:url];
    NSString *responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    NSLog(@"Response : %@", responseString);

    NSMutableArray *imageURLArray = [[NSMutableArray alloc] init];
    NSMutableArray *divClassArray = [[NSMutableArray alloc] init];
    //NSString *regexStr = @"<A HREF=\"([^>]*)\">";

    // For image : 1. img src=\"([^>]*)\"  2. <img src=\"([^>]*)\">
    // For getting Class div class
    NSString *regularExpressString = @"div class=\"([^>]*)\"";
    NSError *error;
    NSInteger i =0;
    while (i<[responseString length]) 
    {
        NSRegularExpression *testRegularExpress = [NSRegularExpression regularExpressionWithPattern:regularExpressString options:NSRegularExpressionCaseInsensitive error:&error];

        if( testRegularExpress == nil ) 
        {
            NSLog( @"Error making regex: %@", error );
        }

        NSTextCheckingResult *textCheckingResult = [testRegularExpress firstMatchInString:responseString options:0 range:NSMakeRange(i, [responseString length]-i)];
        NSRange range = [textCheckingResult rangeAtIndex:1];
        if (range.location == 0) 
        { 
            break;
        }
        NSString *classNameString = [responseString substringWithRange:range];
        NSLog(@"Div Class Name : %@", classNameString);

        [divClassArray addObject:classNameString];

        i= range.location;
        //NSLog(@"Range.location : %i",range.location);
        i=i+range.length;
    }

    NSLog(@"divClass Array : %@, Count : %d", divClassArray, [divClassArray count]);
}

Respuesta:

<div class="phoneModelItems" style="width:30%;margin-right:4px;"><a href="javascript:noxLatestChart.navToLatestChart('latest');" style="font-weight:italic;">Nokia Model</a></div>

quiero recibir el texto modelo nokia de la clase teléfonoModeloArtículos. ¿Puede decirme cómo recuperar el texto 'Modelo de Nokia'? Gracias por adelantado.

preguntado el 12 de junio de 12 a las 13:06

¿Puedes publicar la cadena de respuesta?

Sr. Meccan gracias por su respuesta. He editado la pregunta. Ya he mencionado la respuesta. ¿Podrías ayudarme? Gracias. -

@Gopinath ¿Conseguiste la solución? -

1 Respuestas

Aquí está mi expresión regular para su problema:

<div\sclass=\"phoneModelItems\".*?><a\shref.*?>(.*?)<\/a><\/div>

puedes probarlo en rubular

Respondido el 12 de junio de 12 a las 13:06

Gracias Sr. Meccan. Lo intentaré en mi proyecto. Gracias una vez más. - Gopinath

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.