|
|
|
|
|
для: RMW
(03.09.2006 в 21:37)
| | Мда, буду тогда прикручивать к своему html-ю... Потому что вариантов у меня других всё равно нету.
А изучать регэкспы нет времени особо...
RMW, я вам - не советник в программировании, но если будет желание просто пообщаться, стучитесь в аську!
Можете посетить мою страничку (там, правда, всё очень просто...)
СПАСИБКИ! | |
|
|
|
|
|
|
|
для: KARLSONCHIK
(03.09.2006 в 21:05)
| | Нет не знаю, ну разве, что ориентироваться
в регэксп на символ перевода строки.
Хотя я регексп плохо знаю.
Кстати проверил свой скрипт на html в 6000 строк.
Поиск и вывод ссылки около 6 секунд, на проце 400Мгц.
Это много лучше чем я ожидал! | |
|
|
|
|
|
|
|
для: 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. Но всё-равно... | |
|
|
|
|
|
|
|
для: 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>
нужно ведь её как-то найти и записать в какую-нибудь переменную!!!
Как это сделать?! | |
|
|
|
|
|
|
|
для: KARLSONCHIK
(03.09.2006 в 14:33)
| | А-а, понятно.
Удобнее было бы абстрагироваться от
понятия строка, вместо этого использовать структуру имеющейся
разметки. Например если файл будет *.htm,
то можно получить все ссылки с их содержимым (атрибуты, текст)
в массив var a = document.getElementsByTagName('A');
и уже разбирать по отдельности каждый элемент и т.п. в том же духе.
Вот только смущает размер файла, не будет ли браузер слишком задумчив
при работе с таким объёмом инфы.
Если txt. и всё это для локала, то можно работать со строками
используя fileSystemObject и например метод ReadLine(),
строковые функции и регулярные выражения для разбора строки. | |
|
|
|
|
|
|
|
для: RMW
(03.09.2006 в 14:06)
| | Об этом вы не беспокойтесь - у пользователя это будет в отдельной папочке))) А папочка на CD...
В общем вся трудность и заключается в работе со строками, а именно: извлечении нужной информации из найденной строки... | |
|
|
|
|
|
|
|
для: KARLSONCHIK
(03.09.2006 в 13:01)
| | Теперь уже мне понятней. ))
Конечно ещё не во всех деталях.
Но ведь в таком случае пользователю
весь этот файл (как бы базу данных) придётся
грузить себе на клиента, чтобы клиент мог в нём искать. | |
|
|
|
|
|
|
|
для: coloboc66
(03.09.2006 в 12:52)
| | Да, вы правы - не сложно, но когда документ состоит из 6000 строк, несколько проблематично вручную его переделать. Потому что в таком случае мне придется практически для каждой строки добавлять по несколько тегов... В общем изначальной задачей было этого избежать. | |
|
|
|
|
|
|
|
для: RMW
(03.09.2006 в 12:43)
| | Всё просто: есть html-страница, частью которой является textbox... в него пользователь вводит ключевое слово для поиска. Сам поиск производится по txt (хотя не принципиально - можно содержимое txt тупо вставить в html, если так проще), в котором находЯТся содержанИЯ документов...
Цель: в результате поиска пользователь должен получить в этой html-странице список названий документов с ссылками на них.
Надеюсь, понятно объяснил... | |
|
|
|
|