Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Задача: заменить все символы "A" на "Я" и все ... Нужна Ваша помощь по написании кодировки 
:(
    Опции темы
BOPOH
  Дата 11.12.2003, 23:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 11.12.2003

Репутация: нет
Всего: нет



Необходимо заменить все символы "A" на "Я" и все "ы" на "о" в поле <INPUT name=text> и передать данные в поле <TEXTAREA name=code>. По возможности, передача текста должна происходить при нажатии кнопки <INPUT type=button>.
Внизу я написал кодировку, которая у меня имеется (не очень то и много: собственно "тело" и скрипт на передачу информации из <INPUT name=text> в <TEXTAREA name=code>).
Если кто-то очень силен в программировании на Jscript'e: заменить все "пробелы" на заначение "\n" (переход на другую строку).

Код
<HTML><HEAD><TITLE>Замена символов</TITLE>
<script>
function printmytext() {
with (document)
{
code.value = text.value+"\n"+'<!-- Кодировка выдана -->'
}
}
</SCRIPT>
</HEAD>

<BODY>
<FONT face=Arial size=2>Введите текст: </FONT><BR>
<INPUT name=text size=40 value="А узнал чты у меня есть ыгрымная семья..."><BR>
<INPUT onclick=printmytext() type=button value="Загрузить"><BR>
<TEXTAREA name=code cols=40 rows=10>Нажмите на кнопку "Загрузить"
для замены символов в Вашем тексте.</TEXTAREA>
</BODY></HTML>


ПОМОГИТЕ, КТО ЧЕМ МОЖЕТ!!!
PM MAIL WWW   Вверх
Nobody
Дата 12.12.2003, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 25.8.2003
Где: Россия, Москва

Репутация: нет
Всего: 16



Используй регексы (регулярные выражения).


--------------------
Алгоритм помещения вопросов на форуме
Выражаем спасибо вот ТАК
Use the Source, Luke!
PM MAIL WWW ICQ   Вверх
[xoodo]
Дата 12.12.2003, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 9.3.2003

Репутация: нет
Всего: 4



Код
t=document.getelementbyname().text;
for(i=0;i<t.length;i++)
{
   if(t.substring(i,1)=="А"){t.substring(i,1)="Я"}
   if(t.substring(i,1)==" "){t.substring(i,1)="\n"}
/*--
и так далее. Пока функция работает - завари себе чайку, пивка налей. Можешь поспать, но не долго. Не самый быстрый вариант...
--*/
}

А вставлять: document.getelementbyname().code.value=t;

Это сообщение отредактировал(а) [xoodo] - 12.12.2003, 20:13
PM   Вверх
BOPOH
  Дата 14.12.2003, 03:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 11.12.2003

Репутация: нет
Всего: нет



to Nobody: Напиши хотя бы пример с описанием! Я бы попробовал разобраться...

to [xoodo]: А можно немного поподробнее. Естественно, в начале задаем var t. Если я вместо getelementbyname() пишу, допустим, detectform, а в теле дописываю <FORM name=detectform>, то в итоге document.getelementbyname().code.value=[object]. И что-такое "length" и "substring"?

Это сообщение отредактировал(а) BOPOH - 14.12.2003, 05:58
PM MAIL WWW   Вверх
Nobody
Дата 14.12.2003, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 25.8.2003
Где: Россия, Москва

Репутация: нет
Всего: 16



var str = "Кякой-ты кривый текст, в кытырым няды зяменить чты-ты.";
str = str.replace(new RegExp("ы","g"), "о");
str = str.replace(new RegExp("я","g"), "а");
alert(str);


--------------------
Алгоритм помещения вопросов на форуме
Выражаем спасибо вот ТАК
Use the Source, Luke!
PM MAIL WWW ICQ   Вверх
Nobody
Дата 14.12.2003, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 25.8.2003
Где: Россия, Москва

Репутация: нет
Всего: 16



И вообще, читайте документацию!
JScript


--------------------
Алгоритм помещения вопросов на форуме
Выражаем спасибо вот ТАК
Use the Source, Luke!
PM MAIL WWW ICQ   Вверх
BOPOH
  Дата 14.12.2003, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 11.12.2003

Репутация: нет
Всего: нет



to Nobody: Спасибо за кодировку! Я в этом, кхе... в английском ничего не понимаю, ну совсем немного. Лучше сам буду разбираться.
А что такое new RegExp("ы","g"), "о");?:??
PM MAIL WWW   Вверх
[xoodo]
Дата 14.12.2003, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 9.3.2003

Репутация: нет
Всего: 4



1.
document.getElementByName().code - обращение к элементу, у которого задан атрибут name="code". Если мы зададим name="txt", то обращаться к элементу будем document.getElementByName().txt и.т.п.

2.
document.getElementByName().code.value - значение элемента. Грубо говоря, вернет в виде строки то, что записано в текстареа с именем code. Ошибка у меня была сначала... Именно это значение мы присвоим переменной t, или str, как товарищ рекомендовал:
t=document.getElementByName().code.value;

3.
t.length - длина строки t (см. пункт 2). Длина, напрмер, строки "синхрофазатрон" = 14.
t.substring(a, b) - подстрока, или часть строки t, начиная с элемента a, длиной b элементов. Нумерация элементов начинается с нуля.
PM   Вверх
BOPOH
  Дата 15.12.2003, 02:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 11.12.2003

Репутация: нет
Всего: нет



to [xoodo]: Спасибо! Популярно объяснил. Но в метод г-на Nobody быстрее... сейчас не до пива, сессия на носу. Но задается такой вопрос: А если мне нужно заменить двойные кавычки (") на "<<", к примеру. Как тут поступить.
И скажите, пожалуйста, как опытные програмисты новечку: Jscript = Javascript или нет!
Когда закончу кодировку, напишу, зачем мне все это нужно! smile.gif
Еще раз спасибо, Bopo?
PM MAIL WWW   Вверх
[xoodo]
Дата 15.12.2003, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 9.3.2003

Репутация: нет
Всего: 4



Сессия - это да. Не ты один такой...

В любом из двух способов (ничейный действительно короче smile.gif):
Код

if(t.substring(i,1)=="\""){t.substring(i,1)="<<"}"
/*--ИЛИ--*/
t=t.replace(new RegExp("\"","g"), "<<"); //вроде так...

Символ \ - это указание, что следующий за ним символ (в нашем случае ") следует не интерпритировать, а читать как есть.

А, еще.

JScript не равно JavaScript. Первый - это что-то вроде мелкософтовских развлечений очередных, а второй, который мы и обсуждаем - это разработки Нетскейпа изначально.

Это сообщение отредактировал(а) [xoodo] - 15.12.2003, 19:01
PM   Вверх
Nobody
Дата 15.12.2003, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 25.8.2003
Где: Россия, Москва

Репутация: нет
Всего: 16



BOPOH
Флаг "g" означает, что замену надо производить по всей строке, а не только первое совпадение.


--------------------
Алгоритм помещения вопросов на форуме
Выражаем спасибо вот ТАК
Use the Source, Luke!
PM MAIL WWW ICQ   Вверх
BOPOH
Дата 16.12.2003, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 11.12.2003

Репутация: нет
Всего: нет



to NoBody & [xoodo]: Спасибо Вам огромное! Я сначала вообще-то проборал через REPLACE, но ерунда какая-то получалась. Сейчас займусь изменением источника... biggrin.gif *Сумашедший смех* hehe.gif
to All: Внимание создателям WAP-сайтов! baaa.gif Теперь Вы сможете получить дешифровщик, заменив, соответственно симвовы, как было указано в примере. Например: Б == &#x0411; и т.д. Да здравствует всемирная русификация! Конечно, можно было бы воспользоваться "Opera", но это дело сугубо каждого. wink.gif
Закрывайте тему!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1022 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.