PDA

Просмотр полной версии : Как так сделать?! =*(


Di-z
30.01.2010, 04:58
Всем Привет! =) Есть такое дело, приведу всё в примерах, например есть текст например там база сотрудников компании, в простом блокноте, и в каждой строчке сотрудника есть телефон, 11 значный, а теперь вопрос, нужно что то такое, программа или скрипт, что бы эти номера 11 значные складывал в отдельный файл, это что то типо чекера по 11 значным номерам...если ли такой?

shell_c0de
30.01.2010, 05:02
а чем excel хуже всякого чекера/парсера ?

Di-z
30.01.2010, 05:06
нет, не много ты не понял, у меня всё это добро в простом txt, и нужно что бы он оставил номера только вида:
***********
***********
***********

Scripter
30.01.2010, 05:09
Если идет типо такого:
Василий 11111111111
Петрович 22222222222

То:
ищем первый пробел, удаляем все то что до него и пробел включительно, и всё

shell_c0de
30.01.2010, 05:10
Excel --> Открыть --> текстовой файл --> "Укажите формат данных" далее ---> другой и там разделяешь по выбору ...
Пример :
http://s003.radikal.ru/i202/1001/7d/57f29223d926.jpg (http://www.radikal.ru)

Di-z
30.01.2010, 05:12
таких строк 100, в ручную не айс сделать, а на счёт как ты сказал такого вида, нет, мне вообще простого самого вида:
номер
номер
номер
номер
---
Без всяких там имён и так далее...

Scripter
30.01.2010, 05:14
Если идет типо такого:
Василий 11111111111
Петрович 22222222222

То:
ищем первый пробел, удаляем все то что до него и пробел включительно, и всё
если так, то можно все проще, открываешь в блокноте, заменить " " на ";"
а потом можешь воспользоваться какой-либо программой, например, моей:
https://forum.antichat.ru/thread129706-Generator+Pro.html
которая уберет сама разделитель ; и все что находится до него

Di-z
30.01.2010, 05:16
Jakovas|Lipsteinas|1850 Gateway Blvd. Suite 1080||Concord|California|4798510040914349
---
Вот пример строчки
и как ты тут предлагаешь заменять?

Spyder
30.01.2010, 05:18
/(\d{11})/

Spyder
30.01.2010, 05:20
вот тебе на перле пример

#!perl
open(FH,'baza.txt');
open(RES,">nomera.txt");

while (<FH>) {
if(/(\d{11})/) {
print RES $1."\n";
}
}

shell_c0de
30.01.2010, 05:21
йопт
http://s001.radikal.ru/i196/1001/4e/378e96dd64dft.jpg (http://radikal.ru/F/s001.radikal.ru/i196/1001/4e/378e96dd64df.jpg.html)
потом эту колонку сохраняешь как отдельный файл и все =\

Scripter
30.01.2010, 05:23
Jakovas|Lipsteinas|1850 Gateway Blvd. Suite 1080||Concord|California|4798510040914349

очень просто...
буду разбирать на примере моей программы:
указываем твой файл
указываем разделитель |
жмем Y;X 6 раз и получаем:

4798510040914349|Jakovas|Lipsteinas|1850 Gateway Blvd. Suite 1080||Concord|California

Жмем X

Получаем 4798510040914349

Spyder
30.01.2010, 05:25
на юниксах вообще одной командой с грепом можно это сделать
Чет овы уже загоняетесь

shell_c0de
30.01.2010, 05:26
а еще чтобы было удобнее | заменяешь в блокноте на "| " |с пробелом потом открываешь в excel'e а там уже как показал выше автоматом сортируется по этим же символам/параметрам ...

Di-z
30.01.2010, 05:27
и ещё такой вопрос, как запустить перл на компе. а то я ток работал с пыхом и мускулом

Spyder
30.01.2010, 05:29
http://www.activestate.com/activeperl/ - качай и ставь

Di-z
30.01.2010, 05:51
О_о пасиба за перл скрипт, все пашет, быстро и просто! спасибо!

Winst0n
30.01.2010, 12:53
notepad++
(.+)|(.+)|(.+)||(.+)|(.+)|
заменить на пустоту x)