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

06.05.2010, 02:52
|
|
Познающий
Регистрация: 06.04.2008
Сообщений: 93
Провел на форуме: 3944063
Репутация:
77
|
|
Вытащить определенные фрагменты из txt
Есть текстовый файл, предполжим такого вида:
"...Параметр -savehelps заставляет сохранить файл helps.txt. Фрагмент файла ROM=KJF5IDJGJ для иллюстрации: ... #RACE хранит шаблон, по которому создаются мобы определенной ROM=2JL7JVS9GJ разновидности (расы, вида и т.п.). ..."
Как вытащить то, что находится после "ROM=" в отдельный файл? чтобы на выходе был txt, содержий в себе:
KJF5IDJGJ
2JL7JVS9GJ
.............
|
|
|

06.05.2010, 03:16
|
|
Banned
Регистрация: 02.05.2010
Сообщений: 0
Провел на форуме: 221109
Репутация:
0
|
|
Такая штука парсер называется
|
|
|

06.05.2010, 03:29
|
|
Moderator - Level 7
Регистрация: 04.02.2007
Сообщений: 554
Провел на форуме: 7518056
Репутация:
1089
|
|
Сообщение от sultan128
Есть текстовый файл, предполжим такого вида:
"...Параметр -savehelps заставляет сохранить файл helps.txt. Фрагмент файла ROM=KJF5IDJGJ для иллюстрации: ... #RACE хранит шаблон, по которому создаются мобы определенной ROM=2JL7JVS9GJ разновидности (расы, вида и т.п.). ..."
Как вытащить то, что находится после "ROM=" в отдельный файл? чтобы на выходе был txt, содержий в себе:
KJF5IDJGJ
2JL7JVS9GJ
.............
Проверь (мне лень)
PHP код:
<?php
$text =file_get_contents('txt.txt');
preg_match_all("#ROM=(.*)#iU",$text, $out );
$result = $out[1];
foreach($result as $value)
{
echo "$value <br />";
flush();
}
?>
Правда вывод не в файл сделал а на экран...если что- сам допишеш пару строчек сохранения файла ...
P.S.  запостил бы в тематическом разделе в вопросах, получил бы на том ЯП который тебе ближе- а так мучайся- выбирай из этих вариантов что тебе предложили 
Последний раз редактировалось Kusto; 06.05.2010 в 03:45..
|
|
|

06.05.2010, 03:29
|
|
Постоянный
Регистрация: 17.09.2008
Сообщений: 562
Провел на форуме: 6962560
Репутация:
536
|
|
Код:
#!/usr/local/bin/perl
open(F, 'in.txt');
$f = join('', <F>);
close(F);
@ar = $f =~ /ROM=(.+?)\s/g;
open(OUT, '>> oit.txt');
foreach (@ar)
{
print OUT "$_\n";
}
close(OUT);
|
|
|

06.05.2010, 03:30
|
|
Постоянный
Регистрация: 18.11.2009
Сообщений: 709
Провел на форуме: 1410429
Репутация:
214
|
|
это на руби, не тестировалось
Код:
infl=File.new("infile.txt","rb")
outfl=File.new("outfile.txt","a")
while !infl.eof do outfl.puts infl.gets.chop.split("ROM=")[1] end
outfl.close
infl.close
Последний раз редактировалось lukmus; 06.05.2010 в 03:32..
|
|
|

06.05.2010, 04:58
|
|
Познающий
Регистрация: 06.04.2008
Сообщений: 93
Провел на форуме: 3944063
Репутация:
77
|
|
Всем спс, заюзал последний вариант
|
|
|

10.05.2010, 09:24
|
|
Новичок
Регистрация: 09.04.2009
Сообщений: 8
Провел на форуме: 71852
Репутация:
0
|
|
Ребятки а кто мне поможет, очень нужно, нигде найти не могу парсера что бы делал из текста: user:86359b816ab3adff0ae96dbed4b7ddb6 в текст:
86359b816ab3adff0ae96dbed4b7ddb6:user
Заранее очень благодарен! Пойдет и php и perl
А еще лучше если парсер будет объединять 2 словаря, список юзеров и хэшей в:
86359b816ab3adff0ae96dbed4b7ddb6:user
Последний раз редактировалось cipa21; 10.05.2010 в 09:37..
|
|
|

10.05.2010, 09:33
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
A Python ?
Код:
#!/usr/bin/env python
#-*-encoding:UTF-8-*-
with open("input_1.txt") as inpt1:
with open("input_2.txt") as inpt2:
with open("out.txt", "w") as out:
for line in inpt1:
line = line.strip().split(":")
if len(line) == 2:
out.write("{0}:{1}\n".format(line[1], line[0]))
else:
print "BAD FORMAT {0}".format(":".join(line))
for line in inpt2:
line = line.strip().split(":")
if len(line) == 2:
out.write("{0}:{1}\n".format(line[1], line[0]))
else:
print "BAD FORMAT {0}".format(":".join(line))
Уже для двух файлов )
Последний раз редактировалось login999; 10.05.2010 в 09:44..
|
|
|

10.05.2010, 09:37
|
|
Новичок
Регистрация: 09.04.2009
Сообщений: 8
Провел на форуме: 71852
Репутация:
0
|
|
Спс, щас питон поставлю ,проверю, спасибо за заботу и помощ 
|
|
|

10.05.2010, 10:02
|
|
Постоянный
Регистрация: 05.06.2009
Сообщений: 706
Провел на форуме: 2764047
Репутация:
759
|
|
Kusto!
пугаешь молодёжь RegEx-сами ))
написан код правильно.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|