Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > вкладывает текст


Автор: viktorijakup 9.2.2009, 14:51

Привет !!!

имею алгоритм который вкладывает текст
но он работаит когда \insert{aaa.tex} 
но неработаит когда \insert aaa.tex 

Што делать !!!!

Код

while(/^\\insert\{(.*?)(\.tex)?\}/){
      $pries=$`."\n";
      $nekeisk=$&;
      $vardas=$1;
      $po=$';
      $failiukas=$1.".tex";
         
      if(-e "$dir/$failiukas"){
                               open (IN2,"<$failiukas") || die "negaliu atidaryti $failiukas failo.\n";
                               $vidus=<IN2>;
                               close IN2;
     
                               $visas=$visas.$pries.$vidus."\n";
                               $_=$po;
                               print "Idetas failas $failiukas\n";
                              }
     else{
           $visas=$visas.$pries.$failiukas."\n";
           $_=$po;
           print "$failiukas failas nerastas!!!!!!\n";
         }

                               }
$visas=$visas.$_;
$_=$visas;
$visas = "";


Автор: NuINu 9.2.2009, 15:37
Цитата(viktorijakup @  9.2.2009,  12:51 Найти цитируемый пост)
Што делать !!!!

1 выучить русский язык
2 выучить регулярные выражения.
... ну и еще много можно пожелайний написать... типа того, чтобы точнее описывать суть задачи...

так что, всегда найдется "что делать"

Автор: ginnie 9.2.2009, 15:48
viktorijakup, сначала можно попробовать

Код

while(/^\\insert[\{\s]+(.*?)(\.tex)?\}?/){


а затем, обязательно то, что посоветовал NuINu  smile  

Автор: viktorijakup 9.2.2009, 17:01



Спосибо  smile 

Код

while(/^\\insert[\{\s]+(.*?)(\.tex)?[\}\s]/){


Спасли  smile 

Виктория

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)