Принципиальный молчун
Зарегистрирован: 28 January 2010
Сообщения: 2
Примеры кода: 0
|
регулярные выражения |
28 January 2010 04:39 |
|
|
|
|
Есть текст:
a href="URL"
text
text2
text3
a href="URL2"
Чтобы выдрать контент, который идёт после "URL"" и перед "URL2" использую следующее выражение:
(?<=URL")(.*\s*)*(?=URL2)
В приведённом выше примере всё работает хорошо. Но с большим объёмом текста (html страница одного из форумов) программа начинает жёстко зависать и входит в ступор (Expresso и MS Visual Studio 2008 C#). В случае даже такого выражения: .*(?=URL2) тоже виснет.
Можете подсказать, как эту проблему решить? Может как-то выражение усовершенствовать...
Можно уже в C# сделать несколько поисков по тексту:
1. (?<=URL")(.*\s*)* ,
2. потом из п.1 (?<=URL2)(.*\s*)*
3. удалить текст из п.2 и тогда получится, то что нужно.
Но это как-то не рационально что-ли..
|
|