|
автор: Tor (27.03.2005 в 18:35) |
|
| Мне нужно регулярное выражение, которое выделяет из текста URL'ы вида http://www.somehost.ru/, http://somehost.ru, www.somehost.ru и somehost.ru. | |
|
|
|
|
|
|
|
для: Tor
(27.03.2005 в 18:35)
| | Вот это "somehost.ru" - очень сложно вытащить... Вообще отделить URL от текста очень сложно - т.е. сложно подобрать регулярное вырежение на все случая жизни... тут следует подумать... скорее всего придётся обрабатывать каждый из видов URL и объединять их |... | |
|
|
|
|
|
|
|
для: Tor
(27.03.2005 в 18:35)
| | preg_match_all("/(http:\/\/|www\.|http:\/\/www\.)[^\"'\s]+/i", $str, $matches)
somehost.ru выделит можно так
preg_match_all("/\s[^\s\.]+\.(ru|com|net)/i", $str, $matches) | |
|
|
|
|
автор: Tor (28.03.2005 в 11:07) |
|
|
для: Artem S.
(27.03.2005 в 22:33)
| | Точно. У меня было что-то похожее, только не работающее.
А нельзя ли справиться с точкой, если ссылка находится в конце предложения?
Например: Вот ссылка - [url]www.softtime.ru.[/url] | |
|
|
|