Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Java / JavaScript


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

Чемпионы рейтинга экспертов в этой рассылке

Botsman
Статус: Практикант
Рейтинг: 119
∙ повысить рейтинг >>
Hubbitus
Статус: 10-й класс
Рейтинг: 92
∙ повысить рейтинг >>
Волков Алексей
Статус: 3-й класс
Рейтинг: 31
∙ повысить рейтинг >>

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Java/JavaScript

Выпуск № 624
от 17.05.2009, 20:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 380, Экспертов: 26
В номере:Вопросов: 1, Ответов: 1

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>

Вопрос № 167113: Добрый вечер Уважаемые эксперты. У меня появился вопрос, нашел в нете ява скрипт для замены кода на смайлики, попытался ее переделать. Ничего не вышло. Я не понимаю каким образом разобрать например эти строки ['mellow', /:-||:||=|...


Вопрос № 167.113
Добрый вечер Уважаемые эксперты. У меня появился вопрос, нашел в нете ява скрипт для замены кода на смайлики, попытался ее переделать. Ничего не вышло. Я не понимаю каким образом разобрать например эти строки
['mellow', /:-||:||=|/gi],
['sad', /:(+|:-(+|=(+|:-[|:[|=[/gi],
Где из них какой смайл, и что значат в этих строках знаки "/","". Я хотел бы добавить например чтобы за грустный отвечал еще код "грустный", как мне это сделать? Намучался... Никак не получалось.. пожалуйста подскажите. Заранее спасибо.

Приложение:

Отправлен: 12.05.2009, 19:53
Вопрос задал: Dimon4ik (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 6)

Отвечает: Иоффе Мэир Вэлевич
Здравствуйте, Dimon4ik!

Ну, на сколько я могу судить, то 'mellow' и 'sad' это названия смайликов - "на веселе" и "грустный"

Пройдёмся теперь по регулярным выражениям.

['mellow', /:-||:||=|/gi]

//gi - всё, что находится между двумя слэшами это регулярное выражение. g - значит global (искать все воплощения выражения во всей строке), i - invariant (искать без учёта регистра)

Разберём выражение между двумя слэшами ":-||:||=|"

:-| - значит строка вида ":-|" ( бэкслэш "" перед символом "|" это просто символ escaping (простите, не знаю как это будет по-русски), дело в том, что сам сивол "|" это логическое "или" и потому нужен escaping, чтобы превратить его просто в символ "|" )
То есть получаем из всей строки ":-|" или ":|" или "=|".

Это и есть те наборы символов, которые, наверное, и будут заменены на слово mellow

то же самое и для второго объекта

'sad', /:(+|:-(+|=(+|:-[|:[|=[/gi

":(" или ":-(" или "=(" или ":-[" или "=[" будут заменены на слово sad

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

например :-(((( или :((((((((((((((((((((


более подробно о регулярных выражениях (regular expression) можете почитать вот здесь https://developer.mozilla.org/En/Core_JavaScript_1.5_Guide/Regular_Expressions
или ещё на сотне-другой подобных ресурсов которые Вы с лёгкостью найдёте в гугле.

Удачи
---------
There are 10 types of people. Those who understand binary and those who don't.
Ответ отправил: Иоффе Мэир Вэлевич (статус: Студент)
Ответ отправлен: 13.05.2009, 01:39

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 249057 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо за полный и очень хороший ответ. Вы мне очень сильно помогли.
    Большое спасибо.


    Вы имеете возможность оценить этот выпуск рассылки.
    Нам очень важно Ваше мнение!
    Оценить этот выпуск рассылки >>

    Отправить вопрос экспертам этой рассылки

    Приложение (если необходимо):

    * Код программы, выдержки из закона и т.п. дополнение к вопросу.
    Эта информация будет отображена в аналогичном окне как есть.

    Обратите внимание!
    Вопрос будет отправлен всем экспертам данной рассылки!

    Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
    экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


    Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
    Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров >>

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RusFAQ.ru, Россия, Москва.
    Авторское право: ООО "Мастер-Эксперт Про"
    Техподдержка портала, тел.: +7 (926) 535-23-31
    Хостинг: "Московский хостер"
    Поддержка: "Московский дизайнер"
    Авторские права | Реклама на портале

    ∙ Версия системы: 5.13 от 01.12.2008

    Яндекс Rambler's Top100
    RusFAQ.ru | MosHoster.ru | MosDesigner.ru
    RusIRC.ru | Kalashnikoff.ru | RadioLeader.ru

    В избранное