ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Требуется помощь (Регулярные выражения)
  #1  
Старый 11.02.2008, 18:37
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
Провел на форуме:
214923

Репутация: 17
Отправить сообщение для SSB1981 с помощью ICQ
Question Требуется помощь (Регулярные выражения)

Здравствуйте!
Т.К в регулярных выражения я не очень, то прошу вашей помощи.
Есть вот такая строка:
1042355456 1042355711 Ru Вологда Вологодская область Северо-Западный
цифры - дапазон Ip
потом Id страны
потом город (Вологда)
далее область
и последнее регион

Мне необходимо заключить все эти данные в кавычки и разделить запятой.
Кто поможет/напишет?
Спасибо!
P.S. таких сторок просто 66 000
 
Ответить с цитированием

  #2  
Старый 11.02.2008, 18:44
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


Отправить сообщение для bul.666 с помощью ICQ
По умолчанию

Приведи штук пять строк для проверки
 
Ответить с цитированием

  #3  
Старый 11.02.2008, 18:51
Kaimi
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме:
18127311

Репутация: 1676


Отправить сообщение для Kaimi с помощью ICQ
По умолчанию

А нафига регулярку писать?
Замени пробелы на
Код:
 ","
В начало строки " и замени
Код:
\n
на "
 
Ответить с цитированием

  #4  
Старый 11.02.2008, 18:55
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


Отправить сообщение для bul.666 с помощью ICQ
По умолчанию

Вологодская область
Тут пробел =\
 
Ответить с цитированием

  #5  
Старый 11.02.2008, 18:56
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Цитата:
Сообщение от ssb1981  
не так не пойдёт.
Сам и делай
 
Ответить с цитированием

  #6  
Старый 11.02.2008, 19:08
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
Провел на форуме:
214923

Репутация: 17
Отправить сообщение для SSB1981 с помощью ICQ
По умолчанию

Isis это не туда у меня интернет медленный поэтому ответ поздно приходит
строки
1348299520 1348300543 RU Москва Москва Центральный
1348317184 1348321279 RU Санкт-Петербург Санкт-Петербург Северо-Западный
1357710176 1357710207 RU Мурманск Мурманская область Северо-Западный
1357710280 1357710287 RU Москва Москва Центральный
1357710288 1357710295 RU Подольск Московская область Центральный
 
Ответить с цитированием

  #7  
Старый 11.02.2008, 19:35
cylaaaan
Участник форума
Регистрация: 31.08.2006
Сообщений: 149
Провел на форуме:
1763379

Репутация: 155
Отправить сообщение для cylaaaan с помощью ICQ
По умолчанию

может быть нужно из файла каждую стоку обратить в массив
например сделать ей вид:

$a[0] = "1348299520 1348300543 RU Москва Москва Центральный";
$a[1] = "...";
$a[2] = "...";

и так далее....

а потом юзать к каждой строке preg_match_all, а потом выводить на экран, через for естевственно
 
Ответить с цитированием

  #8  
Старый 11.02.2008, 20:13
demonoid
Banned
Регистрация: 12.01.2007
Сообщений: 113
Провел на форуме:
4094601

Репутация: 495
По умолчанию

Цитата:
Сообщение от SSB1981  
Здравствуйте!
Т.К в регулярных выражения я не очень, то прошу вашей помощи.
Код:
#!perl -w
use strict;
my $f = shift||exit print "\x09usage $0 <file>";
open my $FILE,$f or die $!; 
foreach my $text (<$FILE>)
{ 
   printcyr("'$1','$2','$3','$4','$5','$6'\n") if $text=~/(\d+) (\d+) ([A-Z]{2}) (.+?) (.+) (.+)/;
}
close $FILE;
sub printcyr 
{

	my $text = shift;
	$text =~ y/А-яЁё/\x80-\xaf\xe0-\xf1/;
	print $text;
}
Код:
C:\>p.pl  id.txt
'1348299520','1348300543','RU','Москва','Москва','Центральный'
'1348317184','1348321279','RU','Санкт-Петербург','Санкт-Петербург','Северо-Западный'
'1357710176','1357710207','RU','Мурманск','Мурманская область','Северо-Западный'
'1357710280','1357710287','RU','Москва','Москва','Центральный'
'1357710288','1357710295','RU','Подольск','Московская область','Центральный'
 
Ответить с цитированием

  #9  
Старый 11.02.2008, 20:23
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию

Проблема только в правильном отделении города, области и региона. Область может состоять из нескольких слов, если города и регионы тоже, то придется сделать справочники областей и регионов, думаю их не очень много
 
Ответить с цитированием

  #10  
Старый 12.02.2008, 03:14
t0tal
Новичок
Регистрация: 30.11.2007
Сообщений: 18
Провел на форуме:
326882

Репутация: 22
По умолчанию

Пользуйся экселем как разделитель выбери пробел и подставляй куда надо столбики с запятыми или кавычками, что там надо то и вставляй.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Требуется помощь user333 О Работе 0 04.02.2008 20:20
требуется помощь...в китайском))) Dumkopff Болталка 6 01.01.2008 20:13
Требуется помощь в описании программ! NoNaMeR С/С++, C#, Delphi, .NET, Asm 1 16.11.2005 02:51



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ