2016-04-30 3 views
0

У меня есть опыт работы с веб-скриптами и какао (Mac), но не с Windows-программированием, поэтому я был бы благодарен за любую помощь в создании пакетного скрипта или smt. У меня есть TextFiles, где есть информация, как этотЗахватить конкретную информацию из txt-файла

AlexanderWelten*FI3FFK!duZ1 
Daten: Alexander Welten<br />Abrahamstr. 22<br />18472 Berlin<br />Deutschland 
Maddiiiiin*hg72152aaf 
Daten: Martin Loob<br />Welzstr. 12<br />52621 Frankfurt<br />Deutschland 
ricki1991*super112X 
Daten: Lars Ulbrich<br />Azurstr. 51<br />72223 Bonn<br />Deutschland 
...... 

"<br />" может быть проигнорировано, это не является эффективным HTML, поэтому нет LINEBREAK, я не заменит его ", " в любом случае в ближайшее время. Everytime есть «Daten:» Я хочу, чтобы захватить почтовые и город от него и создать новый текстовый файл, который должен выглядеть следующим образом:

18472 Berlin 
52621 Frankfurt 
72223 Bonn 
...... 

Глядя на моем прошлом Q & А, очевидно, что мои знания в веб-технологиях. Я был бы признателен за любую помощь

редактировать: почтовых и город, не всегда в одной и то же «месте», потому что иногда есть дополнительный вход между улицей и PostalCode/городом. Пример:

Susimega*hfu827aaa 
Daten: Susi Lanzwelt<br />Mondstr. 16<br />bei Muellers<br />48812 Magdeburg<br />Deutschland 

ответ

2

проще, чем Вам кажется, что:

for /f "tokens=5 delims=<>" %%a in (test.txt) do echo %%a 

Если вы собираетесь заменить <br /> с запятой, используйте "tokens=3 delims=,"

(используйте %a вместо %%a, если вы используете его в командной строке)

для обработки дополнительной записи:

(for /f "tokens=5,7 delims=<>" %%a in (t.txt) do (
    echo %%a|findstr /b "[0-9]">nul && echo %%a || echo %%b 
)>output.txt 

трюк: если жетон 5 начинается с числа, то эхо маркер 5 еще эхо маркер 7

+0

Интересно. Я ожидал гораздо большего количества кода. Отлично работает, но есть небольшая проблема. Я забыл упомянуть, что иногда есть дополнительная запись между «Улицей» и «Плз-городом», в этом случае ошибочная запись захватывается, я просто попробовал. Любая идея, как это исправить? (Я сделал редактирование в начале сообщения, чтобы объяснить) – RedErdnuss

+0

пропустить «bei Muellers» или добавить его к выходу? – Stephan

+0

Спасибо, что ответили Стефаном. Прямо сейчас он добавляет «bei Muellers» к выходу - мне нужен только PLZ и город – RedErdnuss

Смежные вопросы