ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

10.06.2009, 16:00
|
|
Постоянный
Регистрация: 30.09.2007
Сообщений: 815
Провел на форуме: 2590715
Репутация:
659
|
|
Код:
preg_match_all("/(.+):(.+)/", file_get_contents("accs.txt"), $accs);
|
|
|

10.06.2009, 16:18
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
Ну вот 3 варианта обработки файла:
PHP код:
<?php
// вариант 1
foreach (explode ("\n", file_get_contents ('1.txt')) as $line) {
if (empty ($line))
continue;
list ($email, $pass) = explode (':', $line);
echo "$email\t$pass\n";
}
// вариант 2
foreach (file ('1.txt') as $line) {
$line = rtrim ($line);
if (empty ($line))
continue;
list ($email, $pass) = explode (':', $line);
echo "$email\t$pass\n";
}
// вариант 3
$content = file_get_contents ('1.txt');
$content = preg_replace ('/\n+/', "\n", $content);
preg_match_all ('/(.+?):(.+?)\n/', $content, $m);
for ($i = 0; $i < count ($m[1]); $i++) {
echo "{$m[1][$i]}\t{$m[2][$i]}\n";
}
?>
В последнем случае надо б иметь в конце файла пустую строку
Последний раз редактировалось krypt3r; 10.06.2009 в 16:20..
|
|
|

10.06.2009, 16:27
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Сообщение от krypt3r
Ну вот 3 варианта обработки файла:
В последнем случае надо б иметь в конце файла пустую строку
Читай внимательнее ! Все варианты уже выложили и они гораздо короче. А для регулярок я выкладывал, где можно без пустой последней строки!
Последний раз редактировалось FireFenix; 10.06.2009 в 16:30..
|
|
|

10.06.2009, 17:44
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Если кто не в теме - ачат почему - то режет это иногда. Юзер имел в виду mail@mail.ru  assword.
Dark_Scorpicore, я тебе написал, имхо, самый оптимальный вариант.
Теперь с комментами:
PHP код:
foreach(file('mail.txt') as $account) # в цикле обрабатываем каждую строчку файла mail.txt
{
$data=explode(':',$account); # разделяем мейл, пасс
echo $data[0].' - login.'.$data[1].' - pass'; # выводим даные
}
#Мегахакерский скрипт by me
|
|
|

10.06.2009, 18:21
|
|
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме: 1917742
Репутация:
541
|
|
Сообщение от mailbrush
Если кто не в теме - ачат почему - то режет это иногда. Юзер имел в виду mail@mail.ru  assword.
Dark_Scorpicore, я тебе написал, имхо, самый оптимальный вариант.
Теперь с комментами:
PHP код:
foreach(file('mail.txt') as $account) # в цикле обрабатываем каждую строчку файла mail.txt
{
$data=explode(':',$account); # разделяем мейл, пасс
echo $data[0].' - login.'.$data[1].' - pass'; # выводим даные
}
#Мегахакерский скрипт by me
перевод строки забыл, будет каша при выводе )
зы ТС мне кажеться у тебя список идет без переноса строки user@mail.ru  ass?user@mail.ru  ass ? тогда нужно делать двойной explode по " : " по второму разделителю, что наврное есть пробел 
|
|
|

10.06.2009, 19:07
|
|
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме: 1917742
Репутация:
541
|
|
лажа )
если акки идут в одну строку через пробел, выдаст:
group = user1@mail.ru assword1 user2@mail.ru assword2
email = user1@mail.ru
password = password1 user2@mail.ru  assword2
|
|
|

10.06.2009, 19:56
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Сообщение от LEE_ROY
лажа )
если акки идут в одну строку через пробел, выдаст:
group = user1@mail.ru assword1 user2@mail.ru assword2
email = user1@mail.ru
password = password1 user2@mail.ru  assword2
Нада делать под конкретный случай! ИМХО 
Или прописывать "или" в разделителе регулярки '(\n|\r\n|\+|\#|\ |\*)'
PHP код:
<?php
$file = 'file.txt';
$separator = '(\r\n|\z)'; // ' ' или '_' или '+' или '\n' или '\#' и т.д. :)
$content = file_get_contents($file);
preg_match_all("/(.*?):(.*?)' . $separator . '/ism", $content, $match);
for ($i = 0; $i < count($match[0]); $i++)
{
echo('group = ' . $match[0][$i]);
echo('<br>');
echo('email = ' . $match[1][$i]);
echo('<br>');
echo('password = ' . $match[2][$i]);
echo('<hr>');
}
?>
Последний раз редактировалось FireFenix; 10.06.2009 в 20:03..
|
|
|

10.06.2009, 19:14
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
тогда так:
PHP код:
$accounts=explode(' ',file_get_contetns('mails.txt'));
foreach ($accounts as $account)
{
$var=explode(':',$account);
print_r($var);
}
|
|
|

10.06.2009, 20:05
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Народ, зачем усложнять задачу? Это простая строчка, разбивка которой может обойтись без регулярок.
FireFenix, даже этот код можна сделать более оптимальным. Зачем использовать цикл
PHP код:
for ($i = 0; $i < count($match[0]); $i++)
если для работы с массивами предназначен цикл
Последний раз редактировалось mailbrush; 10.06.2009 в 20:07..
|
|
|

10.06.2009, 20:20
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Сообщение от mailbrush
Народ, зачем усложнять задачу? Это простая строчка, разбивка которой может обойтись без регулярок.
Если сделать задачу на все случаи жизни, то регулярки правят миром
Сообщение от mailbrush
FireFenix, даже этот код можна сделать более оптимальным. Зачем использовать цикл
foreach - да несомненно выведет всё что есть. Но ведь если мне нужна только первая группа выборки? или вторую присвоить/найти различия с другим массивам? тогда поэлементно может и не наглядно, зато практично
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Assembler FAQ
|
GlobalRave |
С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby |
2 |
15.02.2009 18:59 |
|
Конец строки
|
nc.STRIEM |
PHP |
11 |
04.07.2006 00:44 |
|
конец строки
|
Mastermind |
PHP |
15 |
18.08.2005 00:28 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|