Страницы

Поиск по вопросам

среда, 12 июня 2019 г.

Как найти ссылки в тексте? И их положение

Здравствуйте. Есть текст моя программа делит его на предложения. Но из-за возможных ссылок она будет делить текст на предложения не правильно. Я нахожу точки по средству цикла и charAt также поступаю и с !!! ... И прочим.
Насколько я понял мне нужно найти возможные www. http https .ru .... Как мне найти все ссылки в строке и узнать их местоположение что бы когда я искал точки и другие знаки не попал на эту ссылку?


Ответ

Ссылки, на сколько мне известно, не содержат пробелов. Можно воспользоваться этим свойством и найти все точки, которые рядом с ними. Это будут заведомо точки не входящие в url. Данный способ, не может обеспечить точное разделение на предложения, но по крайней мере, исключит ложные срабатывания на ссылках.
String text = "Насколько я понял мне нужно найти возможные" + " www. http https .ru .... Как мне найти все ссылки в " + "строке и узнать их местоположение что бы" + " http://www.yandex.ru/" + " когда я искал точки и другие знаки не попал на эту ссылку?";
for (String str : text.split("([\\s][.])|([.][\\s])")) System.out.println(str);
Вывод будет таковым:
Насколько я понял мне нужно найти возможные www http https ru .. Как мне найти все ссылки в строке и узнать их местоположение что бы http://www.yandex.ru/ когда я искал точки и другие знаки не попал на эту ссылку?

Комментариев нет:

Отправить комментарий