Как удалить из текста предложение со ссылкой?



  • Прошу помочь решить задачу. Есть текст в нем ссылка, необходимо удалить текст в предложении со ссылкой до и после нее в рамках этого предложения и сохранить стоящие перед ним и после него предложения. Которые воспринимаются, как одна строка видимо.

    Тут регулярное выражение, которое использую https://regex101.com/r/PZ0R6x/1/
    (HTTP(S)?:|http(s)?:)//(.?[^/])?\S+|
    [проблема заключается в том, что некоторый текст видимо воспринимает, как строку и при использовании .* или .+ выделает и предидущее и последующее предложения, а их необходимо сохранить.

    Необходимо либо задать начало и конец предложения, чтобы его можно было удалить или как-то разделить предложения на строки.

    Буду очень презнателен за регулярное выражение с описанием!



  • @plaXa said in Как удалить из текста предложение со ссылкой?:

    Прошу помочь решить задачу. Есть текст в нем ссылка, необходимо удалить текст в предложении со ссылкой до и после нее в рамках этого предложения и сохранить стоящие перед ним и после него предложения. Которые воспринимаются, как одна строка видимо.

    Тут регулярное выражение, которое использую https://regex101.com/r/PZ0R6x/1/
    (HTTP(S)?:|http(s)?:)//(.?[^/])?\S+|
    [проблема заключается в том, что некоторый текст видимо воспринимает, как строку и при использовании .* или .+ выделает и предидущее и последующее предложения, а их необходимо сохранить.

    Необходимо либо задать начало и конец предложения, чтобы его можно было удалить или как-то разделить предложения на строки.

    Буду очень презнателен за регулярное выражение с описанием!

    Вам нужно удалить только ссылки, или всё предложение, в котором встречается ссылка?



  • @Fox Все предложение с текстом до и после ссылки. Не затрагивая другие предложения.



  • @plaXa said in Как удалить из текста предложение со ссылкой?:

    @Fox Все предложение с текстом до и после ссылки. Не затрагивая другие предложения.

    Предложения разделяются только точками?



  • @Fox Точки, в основном могут быть восклицательные знаки. В примере заканчивается на "т.д."



  • @plaXa said in Как удалить из текста предложение со ссылкой?:

    @Fox Точки, в основном могут быть восклицательные знаки. В примере заканчивается на "т.д."

    Мне некогда особо долго разбираться, я бы сделал замену в два этапа, использовать типовую регулярку для нахождения ссылок в тексте, например такую:

    (?:https?:\/\/)?(?:[\w\.-]+)\.(?:[a-z]{2,6}\.?)(?:\/[\w\.-]*)*\/?
    

    и заменять найденные ссылки на какой нибудь символ, который не встречается в тексте, например $, а затем заменить уже всё предложение с этим символом на пустую строку, например такой регуляркой:

    \.[^.]*?\$[^.]*?\.
    

    Для замены предложения регулярку нужно будет править в зависимости от ситуации



  • @plaXa Ещё как вариант, посмотреть код разметки страницы с этим текстом, вдруг можно получить только нужную информацию через xpath



  • @Fox Благодарю за регулярки и идею получить только нужный текст!!! Это гениально)))


Log in to reply
 

  • 3
  • 6
  • 4
  • 9
  • 5
  • 6
  • 8
  • 11