Как удалить подстроку из NSString из определенной позиции?

0

Я хочу установить UIWebView с htmlstring, и у меня есть проблема с изображением:...

<img align="absBottom" alt="" height="350" src="http://www.xyz.com//files/userfiles/images/abc.jpg" vspace="10" width="625" />

...

Я хочу заменить высоту и ширину на 200 и 320. Я использую

htmlString = [htmlString stringByReplacingOccurrencesOfString:@"width=\"" withString:@"width=\"320]; 

то у меня есть результат:

<img align="absBottom" alt="" height="350" src="http://www.xyz.com//files/userfiles/images/abc.jpg" vspace="10" width="320625" />

Как удалить число после ширины с htmlString или что это правильный способ заменить ширину на 320 пикселей?

Теги:
uiwebview

2 ответа

1
Лучший ответ

Попробуйте использовать NSScanner:

NSScanner *theScanner;
NSString *subStrng =nil;
theScanner = [NSScanner scannerWithString:htmlString];
[theScanner scanUpToString:@"width" intoString:NULL] ;
[theScanner scanUpToString:@" " intoString:&subStrng] ;
htmlString = [htmlString stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@", subStrng] withString::@"width=\"320\""];
NSLog("%@",subStrng);
  • 0
    Оно работает. Спасибо. Но меняется только первое изображение в HTML-коде.
  • 1
    Перейдите по ссылке - stackoverflow.com/questions/6825834/… Вам не понадобятся небольшие изменения.
0

Попробуй это:

htmlString = [htmlString stringByReplacingOccurrencesOfString:@"width=\"625" withString:@"width=\"320];
  • 0
    Да, это хорошо, но что, если ширина изменилась?
  • 0
    Тогда вы должны использовать NSRegularExpression .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню