Как обрезать ссылку с двух сторон?
|
|
[1] Komoff [10.05.2011, 00:49] |
Привет! Нужна помощь по одному вопросу, может подскажешь. Мне нужно вывести ссылку спецкодом $SITE_DIRECT_URL$ без "http://" и всего что может быть после неё, т.е. например, есть ссылка http://likbezz.ru/forum/60 мне нужно получить из неё только likbezz.ru. Ну от "http://" избавится легко Code <?substr($SITE_DIRECT_URL$,7)?> а возможно как-то от всего остального избавится условными операторами или может скриптом? |
|
[2] likbezz [10.05.2011, 00:57] |
Komoff, Code <?(substr($SITE_DIRECT_URL$,7,strpos(substr($SITE_DIRECT_URL$,7),'/')))?> ... Quote (Komoff) или может скриптом? - Скриптом то же самое ) Code <script type="text/javascript"> var url='http://likbezz.ru/forum/60'; alert(url.split('/')[2]); </script> ... Хорошь такие вопросы писать - это элементарно. |
|
[3] Komoff [10.05.2011, 01:01] |
Quote (likbezz) Хорошь такие вопросы писать - это элементарно. Элементарно, это потому что у тебя голова логических их составляет, у меня логически почему-то нечего не составляется. Учится, учится и ещё раз учится... Спасибо большое! |
|
[4] Corey [29.03.2014, 12:54] |
Приветствую спецов юкоза. Прошу помощи с решением , сложным для меня. Проблема : Есть $ENTRY_TITLE$ выводится он в виде Русское название фильма / Английское название фильма 2014 Стал вопрос в надобности , разделить достаточно громоздкую запись , на три части. С помощью этой темы ,частично решил ребус так:
<?(substr($ENTRY_TITLE$,0,strpos(substr($ENTRY_TITLE$,0),'/')))?> Получается "Русское название фильма" <?(substr($ENTRY_TITLE$,-4,strpos(substr($ENTRY_TITLE$,0),'/')))?> Получается "2014"
Вопрос. Насколько реально "достать" часть после слеша и пробела до последних четырёх символов ? А именно "Английское название фильма" |
|
[5] likbezz [29.03.2014, 16:24] |
Corey, Вопрос. Насколько реально "достать" часть после слеша и пробела до последних четырёх символов ? Реально.
$_BIRTHDAY$ Как вытащить, по отдельности: месяц, год и дату (Решение на условных операторах) |
|
[6] Corey [29.03.2014, 20:41] |
<?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,' '),strrpos($ENTRY_TITLE$,' ')-1))?> Что то не получается. Всё время получается разный (перекошенный) результат.
В теме :$_BIRTHDAY$ Как вытащить, по отдельности: месяц, год и дату (Решение на условных операторах) Вытаскивается постоянная величина слов и количество пробелов , а у меня посложнее будет. У меня постоянная величина от слеша+пробел до пробела+4ёх последних символов. блин не могу словить смысл кода. Большая просьба к вам , вы бы не могли мне помочь? |
|
[7] likbezz [29.03.2014, 20:50] |
Corey, Надо обрезать до слеша, и обрезанное укоротить на четыре с конца - получишь вот это: Русское название фильма / Английское название фильма 2014 Год получить - просто 4 с конца.
Вытаскивается постоянная величина слов и количество пробелов Нинадо - там есть вариант с динамическим содержанием. Код <?(substr($_BIRTHDAY$,strpos($_BIRTHDAY$,' '),strrpos($_BIRTHDAY$,' ')-1))?> И вам не пробелы нужны - а слеши. блин не могу словить смысл кода. Большая просьба к вам , вы бы не могли мне помочь? Дать готовый код? Нет, простите.. это не вариант
Решай задачу последовательно.. Обрезать год: Код <?substr('Русское название фильма / Английское название фильма 2014',0,-4)?> Найти вхождение слеша: Код <?strpos('Русское название фильма / Английское название фильма 2014',' / ')+3?> Обрезать обрезную строку с вхождения слеша до конца: Код <?substr(обрезаная строка,вхождение слеша)?>
Доступно только для пользователей ... |
|
[8] Corey [30.03.2014, 01:53] |
Получается только первая обрезка Английское название фильма 2014 <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1))?>
Решаю задачу последовательно.. Обрезаю год: <?substr($ENTRY_TITLE$,0,-4)?>
Нахожу вхождение слеша: <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1))?>
и начинается самое интересное.... это всё собрать до кучи (вроде правильно понял!?!)
Обрезать обрезную строку с вхождения слеша до конца: <?substr(обрезаная строка,вхождение слеша)?>
<?substr(substr($ENTRY_TITLE$,0,-4),substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1))?>(не выходит) <?substr(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1),substr($ENTRY_TITLE$,0,-4))?>(не выходит) <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/',substr($ENTRY_TITLE$,0,-4))+1))?>(не выходит) <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1,strrpos($ENTRY_TITLE$,' ')-1))?>(не выходит) <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,0,-4),strrpos($ENTRY_TITLE$,'/')+1))?>(не выходит) <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,' '),strrpos($ENTRY_TITLE$,' ')-1))?>(не выходит) <?(substr($ENTRY_TITLE$,strrpos($ENTRY_TITLE$,0,-4),strpos($ENTRY_TITLE$,'/')+1))?>(не выходит) Ну в общем я человек который вообще не шарит в пунктуации юкозовских системных операторах и наверное мне не судьба это понять.... |
|
[9] likbezz [30.03.2014, 02:07] |
Corey, Обрезать обрезную строку с вхождения слеша до конца: <?substr(обрезаная строка,вхождение слеша)?> Давайте смотреть.
Обрезаю год: Код <?substr($ENTRY_TITLE$,0,-4)?> ..тут нечего сказать - проще некуда.
Нахожу вхождение слеша: Код <?(substr($ENTRY_TITLE$,strpos($ENTRY_TITLE$,'/')+1))?> ..Ну и где вы находите? Где выражение которое отдает кол-во символов до слеша? м? Вот оно: Код <?strpos($ENTRY_TITLE$,'/')+1?> Все остальное лишнее в данной задаче.
Ну в общем я человек который вообще не шарит в пунктуации юкозовских системных операторах И ознакомься если не в теме. Условные операторы и коды системы юКоз (uCoz) (Справка по условным операторам и кодам системы uCoz) |
|
[10] Corey [30.03.2014, 16:12] |
Ну вот наконец то настал тот час !!! Ответ : <?substr(substr($ENTRY_TITLE$,0,-4),strpos($ENTRY_TITLE$,'/')+1)?>%) Слишком много вложений для меня. Если честно даже не подозревал такие тонкости с этим.
Ведь можно и так делать ? <?substr(обрезаная строка,вхождение слеша,некое вычесление,ещё одно вхождение,итд...)?>
Надо будет немного по шаманить с примерами там..... Для меня это был очень интересный и поучительный "КВЕСТ" , ведь ни где , нет достаточно подробных мануалов по этому поводу и для новичков это достаточно сложной "механизм" понимания и в свою очередь очень мощный инструмент для "творчества"
Спасибо тебе большое , что сразу не послал на и не дал мне ответа. |
|
[11] likbezz [30.03.2014, 17:20] |
Corey, Ведь можно и так делать ? Можно и страшнее - главное на запутаться в скобочках и запятых..
Ну вот наконец то настал тот час ! да) |
|