Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Не подскажите в чем ошибка в этом регулярном выражении? \b(http://|www)(.*)\b Мне надо найти и заменить веб адрес. Только почему-то не входит туда знак / (слэш) До: Это the тест www.yandex.ac.ru, а это просто http://www.yandex.ac.ru. А вот так еще бывает http://www.yandex.ac.ru/dpage or http://www.yandex.ac.ru/dpage/ http://yandex.russia.webmatrixhosting.net После: Это the тест <a href="www.yandex.ac.ru">link</a>, а это просто <a href="http://www.yandex.ac.ru">link</a>. А вот так еще бывает <a href="http://www.yandex.ac.ru/dpage">link</a> or <a href="http://www.yandex.ac.ru/dpage">link</a> / <---- ВОТ ВИДИТЕ? <a href="http://yandex.russia.webmatrixhosting.net">link</a> шаблон подстановки вот <a href="$1$2">link</a> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2006, 17:50 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, nitro-gl, Вы писали: NG>Здравствуйте. NG>Не подскажите в чем ошибка в этом регулярном выражении? NG>\b(http://|www)(.*)\b NG>Мне надо найти и заменить веб адрес. Только почему-то не входит туда знак / (слэш) Когда люди наконец-то научаться поиском пользоваться. :crash: Ошибка в твоем выражении — это (.*), где "." значит любой символ и "*" — обозначающий, что предшествующий ему символ может быть повторен ноль или более раз. Таким образом, в твоем случае вся строка от начала первого вхождения (http://|www) и до конца будет воспринято как искомая. Вот попробуй отпарсить этот текст. Интересно, правда?! Это the тест www.yandex.ac.ru, а это просто http://www.yandex.ac.ru. А вот так еще бывает http://www.yandex.ac.ru/dpage wwwэто адрес... Это вообще цитиата чего-то там "www". Вот всё это будет воспринято как некий мифический адрес web На заметку, чтобы написать выражение тебе нужно знать, что link может иметь протокол отличнй от http и номер порта... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2006, 19:06 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Спасибо конечно за объяснения, но я знаю, что делает это регулярное выражение :) :super: Кстати, оно подходит, если у меня нормальные ссылки в тексте встречаются, без извратов.. :) Я про другое спрашивал. Там, если в веб-адресе есть слэш в конце, то это выражение его (слеш) не воспринимает. Мне не понятно почему... :???: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 12:01 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Тогда вот метасимвол \b что делает? у меня в книжке написано, что это — границы слова... я видимо не так понял.:xz: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 13:57 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, nitro-gl, Вы писали: NG>Тогда вот метасимвол \b что делает? NG>у меня в книжке написано, что это — границы слова... NG>я видимо не так понял.:xz: Думаю, что лучше всего использовать пробельные символы в качестве ограничителей слова. Их паттерн — \s Кстати, этот паттерн не ловит пробельный символ с кодом \xA0 — будьте внимательны. Все о мобильных гаджетах... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 14:35 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, nitro-gl, Вы писали: NG>Тогда вот метасимвол \b что делает? NG>у меня в книжке написано, что это — границы слова... NG>я видимо не так понял.:xz: Сейчас совсем нет времени смотреть почему именно последний слеш не захватывает, но попробуй поставить в качестве ограничения конца выражения пробельный символ если уж настаиываешь. :) (http://|www)(.* ? )\s На заметку, если порыться в www.regexlib.com, то можно много примеров найти, как выделять в тексте урл-ки... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 15:05 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
На http://www.regexlib.com я уже был, подходящего не нашел пока. Я пошел по другому пути, скачал книжку по регулярным "Регулярные выражения. 2-е изд" Фридл Дж. Тут много чего есть, в том числе и то что мне нужно. В общем спасибо, буду пробовать. PS Кстати, RustM, ты случайно в 796 школе не учился? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 18:38 |
|
||
|
Регулярные выражения и веб-адрес
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, nitro-gl, Вы писали: NG>На http://www.regexlib.com я уже был, подходящего не нашел пока. NG>Я пошел по другому пути, скачал книжку по регулярным "Регулярные выражения. 2-е изд" Фридл Дж. :up: NG>Тут много чего есть, в том числе и то что мне нужно. NG>В общем спасибо, буду пробовать. NG>PS NG>Кстати, RustM, ты случайно в 796 школе не учился? Нет :)... << RSDN@Home 1.2.0 alpha rev. 655>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2006, 21:50 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=33892955&tid=1391101]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 330ms |

| 0 / 0 |
