Javascript-форум (https://javascript.ru/forum/)
-   Работа (https://javascript.ru/forum/job/)
-   -   Скрипт ссылок (за небольшую оплату) (https://javascript.ru/forum/job/22587-skript-ssylok-za-nebolshuyu-oplatu.html)

Gozar 06.11.2011 14:41

Цитата:

Сообщение от рони (Сообщение 134595)
float, основное в коде поиск ссылок в любом елементе html

не всех ссылок, а лишь определённого типа.

Класс метасимволов \S* страшная вещь.

А это значит что возможны при указании ссылки вида: 'ссылка:http://ya.ru', мы получим: ''http://ссылка:http://ya.ru'
'ссылкаya.ru', мы получим: 'http://xn--javascript-yqiam0aq6a3i6c9a.ru/'

ну и так далее.

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

Gozar 02.12.2011 00:50

melky,
Рега тоже кривая. Нельзя указывать ссылки вида ya.ru/pre-fix/
И между слов, ссылки у тебя стоять не могут, ты их углами отбиваешь, а это подгонка под реализацию. Этот форум тоже любит русский :)
(МЕЖДУhttp://goo.gle.ru/?q=asdfСЛОВ,)


var a = 'ссылка на карту google maps goo.gle.ru/?q=adfСЛОВ, sdfg ывап'.
match(/(http(s)?:\/\/)?(www\.)?([-.a-z0-9]+)\.(ru|com|net)([-$_.,+=:;/?@&#%a-z0-9]+)?(\/|\b)/i);
alert(a[0]);


Сегодня довелось немного подумать, пока решение такое, но будет ещё допиливаться:

var a = 'ссылка на карту google maps http://maps.google.ru/maps/pre-fix/'.
match(/(http(s)?:\/\/)?(www\.)?([-.a-z0-9]+)\.(ru|com|net)([-$_.,+=:;/?@&#%a-z0-9]+)?(\/|\b)/i);
alert(a[0]);

Почемучкин 05.12.2011 01:12

А если сайт вида
www1.mail.ru
или
subdomain.domain.com
А еще надо запятую, двоеточие и точку в конце убирать - это частая ошибка

devote 05.12.2011 01:22

Цитата:

Сообщение от Почемучкин (Сообщение 140791)
А если сайт вида
www1.mail.ru
или
subdomain.domain.com
А еще надо запятую, двоеточие и точку в конце убирать - это частая ошибка

вот решение http://javascript.ru/forum/project/2...tml#post140782


Часовой пояс GMT +3, время: 17:36.