выражение reg в цели c завершается неудачно на новой строке - PullRequest
1 голос
/ 06 сентября 2011

Я хочу удалить все теги скрипта из HTML, используя цель c.

Я написал это, например:

html1 = [html1 stringByReplacingOccurrencesOfString:@"<script.+?</script>" withString:@"xxx" options: NSRegularExpressionCaseInsensitive|NSRegularExpressionSearch | NSRegularExpressionDotMatchesLineSeparators range:NSMakeRange (0, [html1 length])];

Эта работа со строками без новых строк, такими как:

html1 = @"<script> blah blah </script>";

Но происходит сбой в строках с новыми строками, такими как:

html1 = @"<script> blah \n blah </script>";

Кто-нибудь знает, что я делаю не так?

Спасибо!

ps Мне известно, что это не работает с вложенными тегами сценария.

1 Ответ

1 голос
/ 06 сентября 2011

Я не верю, что эти опции регулярных выражений (например, NSRegularExpressionDotMatchesLineSeparators) действительны для stringByReplacingOccurrencesOfString:withString:options: - AFAIK, NSRegularExpressionSearch просто дает базовую поддержку регулярных выражений.Для более сложных регулярных выражений вы можете использовать класс NSRegularExpression.

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