@UserTrue
Когда искал по форуму, часто встречал ответы этого пользователя. Если найдется минутка, поделитесь опытом. Пока выделил два возможных решения замены curl http. Может есть еще варианты? Какой вариант для вас лучше?
Помогите с регуляркой
-
Есть текст вида:
<tekst><tekst><h1></h2>
<tekst
tekst
tekst
tekst>
<tekst><tekst>Есть регулярка <(?!h|/h).*?>
которая выбирает <tekst><tekst> но не трогает <h1></h2>
Есть необходимость убрать
<tekst
tekst
tekst
tekst>
Но так как он с новой строки, то этой регуляркой он не убирается, как усовершенствовать регулярку <(?!h|/h).*?> чтобы она начала убирать и текст с новой строки? -
@Samael_96 Может всё таки использовать Xpath для парсинга html?
-
@samael_96 said in Помогите с регуляркой:
@fox said in Помогите с регуляркой:
Xpath для парсинга html?
Можно. Но тут в другом ситуация. Вообще возможно это сделать или слишком сложно?
Скорее ненадёжно. Для регулярок приведите пару примеров текста (чтобы узнать, что меняется, а что нет) и что нужно из него получить.
-
@fox
Имеем такой текст на входе:<tekst><tekst><h1></h2> <tekst tekst tekst tekst> <tekst><tekst>теги <h1></h2> должны остаться, все остальное должно уйти.
Пока что мне удалось такую регулярку сделать<(?!h|/h).*?>Она удаляет все между этими скобками
<>Кроме тегов <h1></h1>-...<h6></h6>-
Но, есть одно исключение, вот этот текст:<tekst tekst tekst tekst>между <> она не убирает потому, что он с новой строки начинается.
-
@samael_96 said in Помогите с регуляркой:
@fox
Имеем такой текст на входе:<tekst><tekst><h1></h2> <tekst tekst tekst tekst> <tekst><tekst>теги <h1></h2> должны остаться, все остальное должно уйти.
Пока что мне удалось такую регулярку сделать<(?!h|/h).*?>Она удаляет все между этими скобками
<>Кроме тегов <h1></h1>-...<h6></h6>-
Но, есть одно исключение, вот этот текст:<tekst tekst tekst tekst>между <> она не убирает потому, что он с новой строки начинается.
Действие "первое вхождение" с регуляркой:
<h1>(.*?)<\/h2>Я так понимаю нужен текст между этими тегами?
-
-
@symposium :) нет, мне надо, вот кусок html кода который выдран с этой страницы
<p><a class="plugin-mentions-user plugin-mentions-a" href="http://community.bablosoft.com//uid/394">@fox</a> said in <a href="/post/40221">Помогите с регуляркой</a>:</p> <blockquote> <p>Xpath для парсинга html?</p> </blockquote> <p>Можно. Но тут в другом ситуация. Вообще возможно это сделать или слишком сложно?</p> </blockquote> <p>Скорее ненадёжно. Для регулярок приведите пару примеров текста (чтобы узнать, что меняется, а что нет) и что нужно из него получить.</p> </div> <div class= "clearfix post-footer">Мне надо оставить текст, и удалить html коды, это делается регуляркой (<+?[\s\S]+?>+?), но она удаляет абсолютно все что находится между <>, а мне разметку надо оставить. <h1> прочие теги тут уже какие тебе надо, это делается регуляркой <(?!h|/h).*?> но у нее другой недостаток. Она не удаляет, между <> если они начинаются с новой строки, например так
<div class= "clearfix post-footer">А мне надо регулярка которая чистит от html кода но оставляет нужные мне теги, и удаляет c тем условием что я выше уже описал.
Вот такой вот сложный вопрос, и чувствует моя 5-я точка, что надо было мне пойти по длинному пути еще утром, ибо с утра сижу, блин уже 9 часов вечера, кошмар. -
@samael_96 said in Помогите с регуляркой:
@symposium :) нет, мне надо, вот кусок html кода который выдран с этой страницы
<p><a class="plugin-mentions-user plugin-mentions-a" href="http://community.bablosoft.com//uid/394">@fox</a> said in <a href="/post/40221">Помогите с регуляркой</a>:</p> <blockquote> <p>Xpath для парсинга html?</p> </blockquote> <p>Можно. Но тут в другом ситуация. Вообще возможно это сделать или слишком сложно?</p> </blockquote> <p>Скорее ненадёжно. Для регулярок приведите пару примеров текста (чтобы узнать, что меняется, а что нет) и что нужно из него получить.</p> </div> <div class= "clearfix post-footer">Мне надо оставить текст, и удалить html коды, это делается регуляркой (<+?[\s\S]+?>+?), но она удаляет абсолютно все что находится между <>, а мне разметку надо оставить. <h1> прочие теги тут уже какие тебе надо, это делается регуляркой <(?!h|/h).*?> но у нее другой недостаток. Она не удаляет, между <> если они начинаются с новой строки, например так
<div class= "clearfix post-footer">А мне надо регулярка которая чистит от html кода но оставляет нужные мне теги, и удаляет c тем условием что я выше уже описал.
Вот такой вот сложный вопрос, и чувствует моя 5-я точка, что надо было мне пойти по длинному пути еще утром, ибо с утра сижу, блин уже 9 часов вечера, кошмар.Оно?

<(?!h|\/h).*?[\s\S]*?>