Как заменить часть строки в строке?

Я хочу заменить строку в строке. позвольте мне объяснить вам, какова моя цель взыскания.

Это моя строка

<p>Hello Webseite i want to replace<p>thisPTag</p>which is in the middle 
of the word or in the end of the sentence</p>.  

Если я использую

[string stringByReplacingOccurrencesOfString:@"<p>" withString:@"|break|"]; 

он заменяет только первый

, Но я хочу заменить ВСЕ p-теги, неважно, в предложении или нет, пробел до или после этого также не имеет значения.
Так как я могу это сделать?

Не очень важно, но полезно знать:
пожалуйста, имейте в виду, что я не хочу лишать HTML, я просто хочу заменить p-тег, чтобы установить разрывы для правильных SSML и TTS(текстовая речь)

1 ответ

Решение

Работает (все <p> заменены). Вы наверное просто путаете <p> а также </p>, Это разные литералы, поэтому их нужно будет заменить отдельно:

NSString * a = @"<p>Hello Webseite i want to replace<p>thisPTag</p>which is in the middle of the word or in the end of the sentence</p>. ";

NSString * b = [a stringByReplacingOccurrencesOfString:@"<p>" withString:@"|break|"];
b =  [b stringByReplacingOccurrencesOfString:@"</p>" withString:@"|break|"];

NSLog(@"%@",b);

Это печатает:

| break | Привет, сайт, я хочу заменить |break|thisPTag|break|, который находится в середине слова или в конце предложения |break|.

Другие вопросы по тегам