Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Поисковик на JavaScript

Сообщения:  [1-10]   [11-16] 

 
 автор: KARLSONCHIK   (03.09.2006 в 22:40)   письмо автору
 
   для: RMW   (03.09.2006 в 21:37)
 

Мда, буду тогда прикручивать к своему html-ю... Потому что вариантов у меня других всё равно нету.
А изучать регэкспы нет времени особо...

RMW, я вам - не советник в программировании, но если будет желание просто пообщаться, стучитесь в аську!
Можете посетить мою страничку (там, правда, всё очень просто...)

СПАСИБКИ!

   
 
 автор: RMW   (03.09.2006 в 21:37)   письмо автору
 
   для: KARLSONCHIK   (03.09.2006 в 21:05)
 

Нет не знаю, ну разве, что ориентироваться
в регэксп на символ перевода строки.
Хотя я регексп плохо знаю.
Кстати проверил свой скрипт на html в 6000 строк.
Поиск и вывод ссылки около 6 секунд, на проце 400Мгц.
Это много лучше чем я ожидал!

   
 
 автор: KARLSONCHIK   (03.09.2006 в 21:05)   письмо автору
 
   для: RMW   (03.09.2006 в 20:35)
 

В любом случае вам ОГРОМНОЕ СПАСИБО!!!

Я сам щас пытаюсь разобраться с регэкспами, всё бы ничего, только не могу найти никаких методов, чтобы найти слово в текстовике и узнать, в какой оно строке (по номеру).

Может вы знаете какой-нибудь метод?!
В интернете ничего путного тоже не нашёл...

   
 
 автор: RMW   (03.09.2006 в 20:35)   письмо автору
 
   для: KARLSONCHIK   (03.09.2006 в 15:18)
 

Проблема не только в том как сделать, сделать можно как-нибудь,
но учитывая 60000 строк делать нужно не как-нибудь!
Предположим, что ваш файл был бы *.htm и в нём было бы не 60000 строк
а допустим 500, то можно было бы сделать допустим так:
Файл с инфой test.htm

<html>
<head>
</head>
<body>

<ul>

<li>Вася Иванов<br><a href="pdf_/2004/5/Pages from journal-4.pdf" target="iframe">Первая</a>
<li>Федя Петров<br><a href="pdf_/2005/6/Pages from journal-5.pdf" target="iframe">Вторая</a>
<li>Брат Феди Петрова<br><a href="pdf_/2005/7/Pages from journal-6.pdf" target="iframe">Вторая</a>
<li>Ваня Сидоров<br><a href="pdf_/2006/8/Pages from journal-7.pdf" target="iframe">Третья</a>

</ul>

</body>
</html>

Файл для поиска и вывода:

<html>
<head>
<script>
function f()
{
  var a = document.frames[0].document.getElementsByTagName('A');
  var searchStr = document.forms[0].elements[0].value;
  var resAr = [];
  for(var e in a)
  {
    if(a[e].nodeType == 1 && a[e].nodeName == 'A')
    {
      if(a[e].firstChild.data == searchStr)
      {
        resAr.push(a[e].parentNode.outerHTML);
      }
    }
  }
  document.frames[1].document.write(resAr.join('<br>'));
  document.frames[1].document.close();
}
</script>
</head>
<body>

<iframe src="test.htm" style="display:none"></iframe>
<iframe src="about:blank"></iframe>

<form>
  Поиск по тексту ссылки<br>
  <input type="text">
  <input type="button" value="найти" onclick="f()">
</form>
</body>
</html>

Но это не прокатит при 60000.
Не знаю правда как будут вести себя большие xml или txt файлы.
Также можно попробовать всё сделать на регулярках,
засунуть содержимое файла в переменную и в путь.:)
Не знаю, что из этого может выйти.
З.Ы
Упс там 6000. Но всё-равно...

   
 
 автор: KARLSONCHIK   (03.09.2006 в 15:18)   письмо автору
 
   для: RMW   (03.09.2006 в 14:56)
 

1. Если файл будет *.htm

"...можно получить все ссылки с их содержимым (атрибуты, текст)..."

Все получать не надо. Зачем?! Нужно разобрать на переменные только найденную ссылку!

2. Если файл будет *.txt

Да, я вчера начал разбираться с регулярными выражениями ещё...
Предложенные вами методы обязательно поищу в инэте -СПАСИБО!

НО прежде чем работать со строкой вида (или ссылкой, как вы выразились):

<li>Вася Иванов<br><a href="pdf_/2004/5/Pages from journal-4.pdf" target="iframe">
Неважно какая строка</a>

нужно ведь её как-то найти и записать в какую-нибудь переменную!!!

Как это сделать?!

   
 
 автор: RMW   (03.09.2006 в 14:56)   письмо автору
 
   для: KARLSONCHIK   (03.09.2006 в 14:33)
 

А-а, понятно.
Удобнее было бы абстрагироваться от
понятия строка, вместо этого использовать структуру имеющейся
разметки. Например если файл будет *.htm,
то можно получить все ссылки с их содержимым (атрибуты, текст)
в массив var a = document.getElementsByTagName('A');
и уже разбирать по отдельности каждый элемент и т.п. в том же духе.
Вот только смущает размер файла, не будет ли браузер слишком задумчив
при работе с таким объёмом инфы.
Если txt. и всё это для локала, то можно работать со строками
используя fileSystemObject и например метод ReadLine(),
строковые функции и регулярные выражения для разбора строки.

   
 
 автор: KARLSONCHIK   (03.09.2006 в 14:33)   письмо автору
 
   для: RMW   (03.09.2006 в 14:06)
 

Об этом вы не беспокойтесь - у пользователя это будет в отдельной папочке))) А папочка на CD...
В общем вся трудность и заключается в работе со строками, а именно: извлечении нужной информации из найденной строки...

   
 
 автор: RMW   (03.09.2006 в 14:06)   письмо автору
 
   для: KARLSONCHIK   (03.09.2006 в 13:01)
 

Теперь уже мне понятней. ))
Конечно ещё не во всех деталях.
Но ведь в таком случае пользователю
весь этот файл (как бы базу данных) придётся
грузить себе на клиента, чтобы клиент мог в нём искать.

   
 
 автор: KARLSONCHIK   (03.09.2006 в 13:06)   письмо автору
 
   для: coloboc66   (03.09.2006 в 12:52)
 

Да, вы правы - не сложно, но когда документ состоит из 6000 строк, несколько проблематично вручную его переделать. Потому что в таком случае мне придется практически для каждой строки добавлять по несколько тегов... В общем изначальной задачей было этого избежать.

   
 
 автор: KARLSONCHIK   (03.09.2006 в 13:01)   письмо автору
 
   для: RMW   (03.09.2006 в 12:43)
 

Всё просто: есть html-страница, частью которой является textbox... в него пользователь вводит ключевое слово для поиска. Сам поиск производится по txt (хотя не принципиально - можно содержимое txt тупо вставить в html, если так проще), в котором находЯТся содержанИЯ документов...

Цель: в результате поиска пользователь должен получить в этой html-странице список названий документов с ссылками на них.

Надеюсь, понятно объяснил...

   

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования