02.12.2011, 15:58
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от devote
|
а что плохого в том что знак вопроса попал в ссылку?
|
Тоже почему у тебя будут все ссылки кривыми, которые заканчиваются на запятые и точки и восклицательные знаки или их тоже пользователю запретить ставить?
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
02.12.2011, 16:02
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
[quote=Gozar]зы: ты экранируешь точку в символьном классе:
Сообщение от devote
|
показать чистый исходник в новом окнеСкрыть/показать номера строкпечать кода с сохранением подсветки1[^\.]
а зачем?
|
что бы в имене домена обязалова был хоть одна точка... для этого я читаю все до точки... потом ставлю обязалово точку... и дальнейшее имя домена... тоесть если не указать, то рега примет такую ссылку: http://testdomen/blabla/ за ссылку, что не может быть таковым... ибо в ссылке обязан быть домен первого уровня.
Сообщение от Gozar
|
Тоже почему у тебя будут все ссылки кривыми, которые заканчиваются на запятые и точки и восклицательные знаки или их тоже пользователю запретить ставить?
|
Нет конечно, просто пользователь когда копирует и вставляет ссылку, должен понимать что после нее должен идти пробел... глупо писать зразу же как поставил ссылку.
|
|
02.12.2011, 16:11
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от devote
|
что бы в имене домена обязалова был хоть одна точка...
|
Я не спрашиваю для чего ты это делаешь, я спрашиваю только про экранирование точки. Внутри символьного класса точка является тем чем она является - точкой. Зачем её экранировать?
Сообщение от devote
|
должен понимать что после нее должен идти пробел... глупо писать зразу же как поставил ссылку.
|
Почему глупо? Запятую тоже глупо ставить? По правилам русского языка вроде ставится запятая без пробела. Ты же по крайней мере ставишь без пробела запятую.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
02.12.2011, 16:14
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
вот для примера есть гугловская ссылка:
мой:
var a = 'http://translate.google.ru/?js=n&prev=_t&hl=ru&ie=UTF-8&layout=2&eotf=1&sl=en&tl=ru&text=Possibly+another+solution+would+be+to+have+the+description+text+hidden+by+default+and+only+shows+when+the+title+is+focused%2Fhovered+over.%0D%0A%0D%0A+Here%27s+an+example%3A+http%3A%2F%2Fwww.1true.co.uk%2Ffastscroll.html&file=#en|ru|Mistletoe'.match( /(?:^|[\s]+)((http(s)?:\/\/)|(www\.))([^\.]+)\.([^\s]+)/i );alert(a);
вот как примет ее твоя рега, в ней же и точки и куча борохла:
var a = 'http://translate.google.ru/?js=n&prev=_t&hl=ru&ie=UTF-8&layout=2&eotf=1&sl=en&tl=ru&text=Possibly+another+solution+would+be+to+have+the+description+text+hidden+by+default+and+only+shows+when+the+title+is+focused%2Fhovered+over.%0D%0A%0D%0A+Here%27s+an+example%3A+http%3A%2F%2Fwww.1true.co.uk%2Ffastscroll.html&file=#en|ru|Mistletoe'.match(/(http(s)?:\/\/)?(www\.)?([-.a-z0-9]+)\.(ru|com|net){1}((\/)+[-$_.,+=:;/?@&#%a-z0-9]+)?(\/|\b)/ig);alert(a);
|
|
02.12.2011, 16:15
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Сообщение от Gozar
|
Я не спрашиваю для чего ты это делаешь, я спрашиваю только про экранирование точки. Внутри символьного класса точка является тем чем она является - точкой. Зачем её экранировать?
|
привычка =))) хуже то от этого не становиться)))
|
|
02.12.2011, 16:51
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от devote
|
вот как примет ее твоя рега, в ней же и точки и куча борохла:
|
добавил один символ в регу, теперь она умеет и такие ссылки распознавать, однако в твоей запятые в конце продолжают попадают в выборку.
var a='http://translate.google.ru/?js=n&prev=_t&hl=ru&ie=UTF-8&layout=2&eotf=1&sl=en&tl=ru&text=Possibly+another+solution+would+be+to+have+the+description+text+hidden+by+default+and+only+shows+when+the+title+is+focused%2Fhovered+over.%0D%0A%0D%0A+Here%27s+an+example%3A+http%3A%2F%2Fwww.1true.co.uk%2Ffastscroll.html&file=#en|ru|Mistletoe,'.match(/(http(s)?:\/\/)?(www\.)?([-.a-z0-9]+)\.(ru|com|net){1}((\/)+[-$_.,+=:;/|?@&#%a-z0-9]+)?(\/|\b)/ig);
alert(a);
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
02.12.2011, 17:00
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Оговорюсь, что я не ставлю цель доказать что моя рега лучше или хуже. Только сравнительные характеристики, виды урлов и их контекст и выбор наиболее оптимального варианта.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
02.12.2011, 17:02
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Цитата:
|
однако в твоей запятые в конце продолжают попадают в выборку.
|
ну дык этон не проблема засунуть в регу один символ запятой:
var a = 'http://translate.google.ru/?js=n&prev=_t&hl=ru&ie=UTF-8&layout=2&eotf=1&sl=en&tl=ru&text=Possibly+another+solution+would+be+to+have+the+description+text+hidden+by+default+and+only+shows+when+the+title+is+focused%2Fhovered+over.%0D%0A%0D%0A+Here%27s+an+example%3A+http%3A%2F%2Fwww.1true.co.uk%2Ffastscroll.html&file=#en|ru|Mistletoe,'.
match( /(?:^|[\s]+)((http(s)?:\/\/)|(www\.))([^\.]+)\.(?:[^\s,]+)/ig );
alert(a);
|
|
02.12.2011, 17:03
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Сообщение от Gozar
|
Оговорюсь, что я не ставлю цель доказать что моя рега лучше или хуже. Только сравнительные характеристики, виды урлов и их контекст и выбор наиболее оптимального варианта.
|
Вот это и проблема, что для каждого случая свои плюсы и минусы в любой реге... Поэтому тут как правило пишется от конкретных требований. Я не хочу например считать ссылкой просто надпись google.ru ты же наоборот хочешь это воспринимать как ссылку... и т.д.
|
|
02.12.2011, 17:12
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от devote
|
Я не хочу например считать ссылкой просто надпись google.ru ты же наоборот хочешь это воспринимать как ссылку.
|
Здесь я с тобой не соглашусь потому, что интуитивно понятно, что это адрес в интернете.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
|
|