Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   js и *.tsv или первые шаги к псевдоБД на javascript (https://javascript.ru/forum/offtopic/26650-js-i-%2A-tsv-ili-pervye-shagi-k-psevdobd-na-javascript.html)

Monz 28.03.2012 09:01

"1132 734 Баталина Анастасия Юрьевна Сектор по работе с подхостами и представительствами менеджер по работе с подхостами и представительствами 1 21.08.1980 01.03.2012 - Работает"

Если открыть tsv блокнотом, он будет выглядеть так. Сейчас я добавлю вертикальные разделители, чтобы наглядно отобразить структуру столбцов в таблице.

"|1132| |734| Баталина Анастасия Юрьевна| |Сектор по работе с подхостами и представительствами| менеджер по работе с подхостами и представительствами| 1| | | | | 21.08.1980| 01.03.2012| -| |Работает|"

т.е. в исходных данных есть пустые ячейки.
Split выдаёт следующую структуру:
"1132 |734| Баталина Анастасия Юрьевна|Сектор по работе с подхостами и представительствами|менед ер по работе с подхостами и представительствами|1|21.08.198 0| 01.03.2012|-|Работает|"

Итог: мы потеряли 6 столбцов и получили ненужное смещение в массиве на 6 позиций к началу, т.е. в колонке имя, у нас будет стоять должность, а в колонке номер сотрудника будет код отдела.

monolithed 28.03.2012 13:31

var str = "1132        734    Баталина Анастасия Юрьевна        Сектор по работе с подхостами и представительствами    менеджер по работе с подхостами и представительствами    1                    21.08.1980    01.03.2012    -    Работает";

var tab = '    ';
alert(str.split(RegExp('(' + tab + '(?=' + tab + '))')).join('').split(tab).join('\n'));

Monz 29.03.2012 07:16

Мы никак не можем прийти к единому пониманию, что такое tsv формат.
"TSV (от англ. Tab Separated Values — значения, разделённые табуляцией) — текстовый формат для представления таблиц баз данных. Каждая запись в таблице — это строка текстового файла. Каждое поле записи отделяется от других с помощью символа табуляции, точнее горизонтальной табуляции. TSV — это форма более общего формата DSV — значения разделённые разделителем (англ.)."
http://ru.wikipedia.org/wiki/TSV
в tsv символ табуляции визуально не отображается, это не пробел и не пустая строка. поэтому ваш вариант проблему не может решить.

Monz 04.04.2012 08:49

неужели ни у кого светлой мысли не найдется???

Gozar 04.04.2012 10:30

Цитата:

Сообщение от Monz (Сообщение 166927)
неужели ни у кого светлой мысли не найдется???

Сдать тебя психиатру.

Если тебе нужно решить задачу, то прочитай про регулярные выражения. А конкретно про \t - это символ табуляции.

Не нравиться split используй match или replace

Попробуй включить мозг - это место в голове, которое должно думать. Тебе давно ответили, а не хочешь делать сам иди в раздел работа и плати деньги.

Monz 04.04.2012 13:47

Спасибо за оказанное внимание.


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