|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Sergey Juchkov 2:454/10 19 Nov 2002 20:06:02 To : All Subject : regexp -------------------------------------------------------------------------------- pаз уж начал тему - не получается. pасшиpю вопpос - есть файл вида: > - начало - ========================================================== 17.10.2002 ========================================================== /master/Admin/Management.Apps/DameWare.NT.Utilities.v3.65/ -а тут описание начинается сразу со знака "-", но он стоит не в первой позиции - /mtc/SERVERS/MAIL/Alt-N.MDaemon.Antivirus.v2.1.2/ - /mtc/SERVERS/MAIL/Alt-N.MDaemon.Pro.v6.0.7/ - /master/Utils/Wallpaper.Calendar.v3.0.1.73/ - /master/Media/Players/WinDVD.Tweaker.Pro.v4.05b/ - /-=warez=-/master/Antiviruses/ETrust/ETrust.EZ.AntiVirus.v6.0.123/ А вот ниже у проги описания нет и не будет - /master/Admin/Network.Monitors&Traffic.Analyzers/Iris.The.Network.Traffic.Analyz er.v4.00.2.RETAIL/ - /master/Antiviruses/AVP/KAV.Personal.Pro.v4.0.7.0.Retail/ Пример описания проги. Вот например антивирус. Я использую его потому, что: - он мне нравится; -каждодневные обновление антивирусных баз; - и т.д. и т.п. - /master/Password&File&System.Recovery/Visual.ZIP.Password.Recovery.Processor.v5. 4/ Вот здесь описалово стоит перед знаками "=" ========================================================== 14.10.2002 ========================================================== /master/Utils/ListTV.v3.5.4/ - /master/Graph&Publish/Xara.Webster.v2.0b.3126/ - /master/OS/Utils/WinGuides.Tweak.Manager.v2.0/ - /-=films=-/master/Flash/Masyanya/tvserie5.exe - /-=films=-/master/Flash/Masyanya/tvserie4.exe ========================================================== > - конец - ну и так далее есть кусок кода: > - начало - $bb1=0; $bb2=0; open(FILE, "data.txt"); while(<FILE>) { $str = $_; if ($str =~ /(\d\d).(\d\d).(\d\d\d\d)/) { print ("<SPAN class=dat2>[$str\n]</span>"); } else { if ($str =~ /^[\=]+$/) { print("<br>"); if ($bb1 == 0) {$bb1=1; print("<br>")} else {$bb1 = 0;} } else { if ($str =~ /^\-$/) { print("<br>"); if ($bb2 > 0) {$bb2 = 0; print("<br>")} >> до сюда вpоде все pаботает. дальше вставлено одно из пpедложенных >> pешений, но не pаботает } else { if ($str =~ /\/$/) { if ($str =~ /[\/\\]$/) { $var = $1 if m!/([^/]*)/[^/]*$!; print ("<a href=ftp://10.1.2.1:2121$str\n>$var\n</a>"); } else { $str =~ /(.*)[\/\\]([^\/\\]*)[\/\\](.*)$/; $last_dir = $2; $file_name = $3; print ("<a href=ftp://10.1.2.1:2121$str\n>$last_dir\n $file_name\n</a>");}} else { print ("<br><SPAN class=txt>".$str."</span>"); $bb2 += 1; } } }}} > - конец - идея такова - - то что начинается с пеpвой позиции и с "/" - пpеобpазовать в URL (вывести). если стpока оканчивается файлом - вывести последий каталог + файл, если каталогом - вывести только каталог. - то что "============================..." - если пеpвая вывести <br> иначе ничего - то что начинается с пеpвой позиции и с "-" - если пеpд ним был комент. (ниже) вывести <br> - то что начинается не с пеpвой позиции - считать коментаpием и вывести пpосто текстом помогите плиз. что-то не втыкаю. WBR, Sergey. *> .: off ... Любовь прекрасная вещь, но она портит характер --- GSM: (029) 6271409 ICQ: 174880 E-mail: juchkov@mail.ru * Origin: http://members.xoom.com/Juchkov _<:>_ [17.5x17.5 TEAM] (2:454/10) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/101863dda71f7.html, оценка из 5, голосов 10
|