Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Чтение и анализ файла (https://javascript.ru/forum/misc/33570-chtenie-i-analiz-fajjla.html)

DIEGO007 28.11.2012 11:23

Чтение и анализ файла
 
<input type="file" name="input" />
 <script type="text/javascript">
window.onload = function(){
    document.getElementsByName('input')[0].onchange = function(){
        alert(this.value);
    };
};
</script>

есть код на открытие файла.. как сделать что бы файл был прочитан,проанализирован на повторы слов. т.е.
Условие-надо из текст найти повторяемые слова и вывести их на экран(
например конь-количество повторов 10 ) ит.д

DIEGO007 28.11.2012 21:12

<script type="text/javascript"></script> 
<body>
<input type="file" multiple="true" />
<br />
<form name="myForm">
<textArea name="phrase"  maxlength="700" rows="10" cols="30"></textArea><br>
 ищем слово <input type=text name="element" size="15"/><br><br>
<strong>Ищем повтор:</strong>
<input type=radio name="elemType"  value="буквы/символа"/>буквы/символа
<input type=radio name="elemType"  value="слова"/>слова
</form>
<button onclick="elemCount()" value="count"><font color="#CC0000">Считать</font></button>
<div id="result"></div>
<script type="text/javascript">
function elemCount() {
    var phrase = " " + document.myForm.phrase.value.toUpperCase();
	var element = document.myForm.element.value.toUpperCase();
	var searchType;

	for (var i in document.myForm.elemType) {
		if (document.myForm.elemType[i].checked) {
			searchType = document.myForm.elemType[i].value;
		}
	}

	// удаляем все пробелы и знаки табуляции
	element =  element.replace(/\s/g,"");

	if (document.myForm.elemType[1].checked) {
		element = " " + element + " ";

		// обработка знаков препинания
		phrase = phrase.replace(/\W/," ") + " ";
	}

	var amount = phrase.split(element).length - 1;//подсчитываем результат
	var result = document.getElementById("result");
    result.innerHTML = 'Количество повторов ' + searchType  + '<strong> "' +element.toLowerCase()  +'":</strong> ' + amount;
};
</script>

что то и получилось у меня,но счетчик не работает.....ребят где я накосячил(

a_l 28.11.2012 21:15

DIEGO007, из строки создать массив слов (метод split), отсортировать массив (метод sort) и пройтись по нему, сравнивая i с i+1 элементом.

DIEGO007 28.11.2012 21:42

a_l,а можно кодик? а то уже мозг закипел:help:

Atae 29.11.2012 00:55

а зачем ты ведешь две одинаковых темы? ну то есть, что происходит у тебя в голове в этот момент когда ты пишешь пост то в одну тему а потом копируешь его в другую? О чем ты думаешь? Видишь ли какие-то вспышки света.. Поделись мыслями если ни секрет.

DIEGO007 29.11.2012 09:41

Цитата:

Сообщение от Atae (Сообщение 218572)
....

да одну тему создал и не увидел ее в списке вопросов,и создал вторую тему.

Atae 29.11.2012 10:17

И теперь отписываешься в обоих. Зачем?

DIEGO007 29.11.2012 12:58

Цитата:

Сообщение от Atae (Сообщение 218600)
И теперь отписываешься в обоих. Зачем?

отписываюсь только в этой! ту я удалил для себя,но может у вас она и видна:thanks:


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