NSRegularExpression для удаления HTML-тега - PullRequest
3 голосов
/ 09 февраля 2011

Я занимаюсь разработкой приложения для чтения электронных книг. У меня есть файл .ePUB для всей книги, где в каждой теме книги есть HTML-файл. Я хочу реализовать функцию поиска в приложении. Я использую класс NSRegularExpression для поиска. Пожалуйста, рассмотрите следующий HTML-код:

<temp> I am temp in tempo with temptation </temp>

Скажем, например, в приведенном выше HTML-коде я просто хочу найти слово temp. Теперь в приведенном выше коде temp появляется 5 раз -> <temp> </temp> temp tempment. Я ищу регулярное выражение, где я могу извлечь только целое слово "temp". Я не хочу учитывать слово temp в тегах html <temp> </temp>. Я также не хочу, чтобы слово темп и искушение учитывались.

Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 09 февраля 2011

Как это?

[^<\/?\w*>]+(temp\s)

http://rubular.com/r/3PkdvNZSbr

NSString *evaluate_string = @"<temp> I am temp in tempo with temptation </temp>";
NSString *word = @"temp";
NSError *outError;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:[NSString stringWithFormat:@"[^<\\/?\\w*>]+(%@\\s)", word] options:0 error:&outError];

NSTextCheckingResult *result = [regex firstMatchInString:evaluate_string options:0 range:NSMakeRange(0, [evaluate_string length])];

if(result) {
    NSLog(@"Found");
}
1 голос
/ 09 февраля 2011

Как насчет этого щенка:

</?[a-z][a-z0-9]*[^<>]*>

Я нашел его в библиотеке RegExBuddy:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...