Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   посчитать слова в форме TewxtArea (https://javascript.ru/forum/misc/27770-poschitat-slova-v-forme-tewxtarea.html)

kagan 24.04.2012 10:50

посчитать слова в форме TewxtArea
 
Здравствуйте! Необходима помощь в написании небольшого скрипта на javascript. Нужно посчитать количество слов в форме TextArea.
Вот уже готовый вариант:
<html><head>
<title>Лабораторна робота №3</title>
<script>
function perevirka(){var s = object.value;
if (s=="")
alert('Рядок не заданий')
else {s = s.replace (/\r\n?|\n/g, ' ').replace (/ {2,}/g, ' ').replace (/^ /, '').replace (/ $/, '');
var q = s.split (' ');
alert ('Количество слов: ' + q.length);}
}
</script>
</head>
<body>
<br>
 
<center>
Задайте рядок 
<br>
 
<textarea name="object" cols="30" rows="10" title="Введите текст" onKeyDown="textCounter(this)" onKeyUp="textCounter(this)"></textarea>
<br><br>
 
<input type="button" value="Перевірити" onClick="perevirka()">
 
 
</center>
 
</body>
</html>

Но нужно использовать метод без replace(), для этого надо три переменных:
1) Для считывания текста ( в данном случае она есть это - "s")
2) Для проверки индекса (это не знаю как сделать :-? )
3) Для вывода количества слов (она есть это q.length)

Подскажите попроще как это можно осуществить. Заранее благодарен :)

nevai 28.02.2013 23:07

Вот здесь на phpguru.com.ua есть реализация

nevai 28.02.2013 23:09

Рекомендую там несколько вариантов выбери какой понравится

Deff 01.03.2013 00:32

<html><head>
<title>Лабораторна робота №3</title>
<script>
function textCounter(a){
  obj = a
}
function podschet(){
  if(typeof obj!=='undefined') var s = obj.value;
  if (typeof obj=='undefined'||s=="") {
      alert('Рядок не заданий'); return;
  }  else {
      var q = s.split(/[\s\n,\.]+/gm);
      alert ('Количество слов: ' + q.length);
   }

}
</script>
</head>
<body>
<br>
 
<center>
Задайте рядок 
<br>
 
<textarea name="object" cols="30" rows="10" title="Введите текст" onClick="textCounter(this)"></textarea>
<br><br>
<input type="button" value="Перевірити" onClick="podschet()">
 
 
</center>
 
</body>
</html>


Часовой пояс GMT +3, время: 15:23.