Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.11.2009, 17:48
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

JavaScript + UTF = sad story?
Добрый вечер люди, у всех нижеприведенный скрипт выводит -1 или только у меня дурака? Как сделать, чтобы нужная строка все же была найдена?

<html>
<body>
<script type="text/javascript">

var str="Глава 1. Турбирование 6 коней";

document.write(str.search(/тур/i));

</script>
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 19.11.2009, 17:50
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от rkwdv
у всех нижеприведенный скрипт выводит -1
у меня "9". IE8, Chrome.
Ответить с цитированием
  #3 (permalink)  
Старый 19.11.2009, 17:54
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

Ubuntu 9.10, Firefox 3.5.5. Что я делаю не так? Принудительно выставил кодировку на странице, но не помогло:
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf8">
</head>
<body>

<script type="text/javascript">

var str="Глава 1. Турбирование 6 коней";

document.write(str.search(/тур/i));

</script>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 19.11.2009, 17:58
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

Сообщение от Riim Посмотреть сообщение
у меня "9". IE8, Chrome.
Т.е. это проблема исключительно Firefox?
Ответить с цитированием
  #5 (permalink)  
Старый 19.11.2009, 18:07
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Сообщение от rkwdv Посмотреть сообщение
у всех нижеприведенный скрипт выводит -1
В консоли фаербага -- 9. В ИЕ в адресной строке -- тоже 9:
javascript:alert("Глава 1. Турбирование 6 коней".search(/тур/i));void(0)
Ответить с цитированием
  #6 (permalink)  
Старый 19.11.2009, 18:09
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

Сообщение от e1f Посмотреть сообщение
В консоли фаербага -- 9. В ИЕ в адресной строке -- тоже 9:
javascript:alert("Глава 1. Турбирование 6 коней".search(/тур/i));void(0)

Страница на http://javascript.ru сообщает:

-1

Набирал в консоли Firebug.
Ответить с цитированием
  #7 (permalink)  
Старый 19.11.2009, 18:10
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

ignoreCase почему-то не работает. А вот здесь работает:
str.search(/[р-т]/i)


Плохо все это.

Может так: str.toLowerCase().search ?

Да, и еще в некоторых версиях Chrome ignoreCase для Русских букв вообще не работает. Поэтому я сейчас пишу так: "/[a-zА-Яа-я]/i" .

Последний раз редактировалось Riim, 19.11.2009 в 19:32.
Ответить с цитированием
  #8 (permalink)  
Старый 19.11.2009, 18:12
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

Сообщение от Riim Посмотреть сообщение
ignoreCase почему-то не работает. А вот здесь работает:
str.search(/[р-т]/i)


Плохо все это.

Может так: str.toLowerCase().search ?

Да, и еще в некоторых версиях Chrome ignoreCase для Русских букв вообще не работает. Поэтому я сейчас пишу так: "/a-zА-Яа-я/i" .

javascript:alert("Глава 1. Турбирование 6 коней".toLowerCase().search(/тур/i));void(0)

заработало как надо. Спасибо большое. Согласен, что это плохо - и даже очень плохо. Это проблема браузера или операционной системы?

Последний раз редактировалось rkwdv, 19.11.2009 в 18:16.
Ответить с цитированием
  #9 (permalink)  
Старый 19.11.2009, 18:15
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

А "void(0)" зачем?

Сообщение от rkwdv
Это проблема браузера или операционной системы?
ну, вообще это теперь наша проблема, но если выбирать только между браузером и ОС, то браузер виноват.
Ответить с цитированием
  #10 (permalink)  
Старый 19.11.2009, 18:19
Интересующийся
Отправить личное сообщение для rkwdv Посмотреть профиль Найти все сообщения от rkwdv
 
Регистрация: 19.11.2009
Сообщений: 11

Сообщение от Riim Посмотреть сообщение
А "void(0)" зачем?


ну, вообще это теперь наша проблема, но если выбирать только между браузером и ОС, то браузер виноват.

Попробую написать на форум поддержки Firefox, а то не знают наверное.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с javascript andruhin Общие вопросы Javascript 12 04.05.2012 09:05
Собрался силами, собираюсь освоить Javascript walker Общие вопросы Javascript 14 20.03.2012 14:17
JavaScript на Яндекс.Фотки - почему тормозит браузеры? ZavFirefox Javascript под браузер 23 27.09.2009 18:24
Программист на JavaScript (удалённо) Vadym Работа 1 28.01.2009 12:57
Нужен Старший разработчик JavaScript Yandex Работа 17 19.08.2008 15:43