#javascript #formatting #tabular
#javascript #форматирование #табличный
Вопрос:
У меня есть файл журнала, который генерируется и записывает временные метки доступа к утилите. Журнал выглядит примерно так
Fri May 27 12:43:48 PDT 2011 user1 command1 1 2 3
Fri May 27 12:43:50 PDT 2011 user1 command2 abcdef 12 11
Fri May 27 12:44:00 PDT 2011 user1 command3
Fri May 27 12:45:12 PDT 2011 user1 command4
Я получаю доступ к этому файлу через свой браузер, чтобы проверить активность.
Поскольку файл представляет собой текстовый файл, его не очень легко прочитать.
Возможно ли это (с использованием Javascript?) как изменить файл после загрузки в браузере, чтобы временная метка, имя пользователя и команда отображались в трех столбцах таблицы, а исходный файл не был затронут?
Если это имеет значение, я использую Chrome 12, поэтому любое решение, специфичное для браузера, также будет работать.
Комментарии:
1. Как этот файл передается в браузер? Вероятно, более аккуратным решением будет разделить эти строки на стороне сервера и отправить таблицу в HTML-разметке.
2. рассматривался вариант использования
<pre>
или просто csswhite-space
?3. Как насчет чего-то вроде этого ?
4. @Marcel: Я получаю доступ к файлу с помощью сервера apache.
Ответ №1:
Вы могли бы написать JAVASCRIPTLETET (ярлык javascript: URL в строке вашего браузера), который делает что-то вроде этого:
(function() {
var lines = document.body.innerHTML.split(/r?n/)
, table = "<table>", line, i;
for (i=0; i<lines.length; i ) {
line = lines[i].split(/s /);
table = "<tr>";
table = "<td>" line.slice(0, 6).join(' ') "</td>";
table = "<td>" line[6] "</td>";
table = "<td>" line.slice(7).join(' ') "</td>";
table = "</tr>";
}
table = "</table>";
document.body.innerHTML = table;
})();
Итак, просто сожмите все это в одну строку и сохраните свой ярлык как « javascript:[code here]
«, и это должно сработать. Теоретически. Я не пробовал.