1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Не могу вытащить строки.

Тема в разделе "Web - программирование", создана пользователем Stan777, 23 янв 2007.

Статус темы:
Закрыта.
  1. Stan777

    Stan777 Гость

    Репутация:
    0
    Не могу вытащить строки начинающиеся с ARGS='... и зканчивающиеся ' как это сделать ?
    делал так
    $flag=0;
    while (<Стрим_ФАЙЛ>){
    chomp($_);
    if($_ =~ /(ARGS=)\S/){
    $flag=1;
    push @MASS, $';
    }
    if($flag=1){
    push @MASS, $_;
    }
    if($_ eq "'"){
    $flag=0;
    exit;
    }
    }
    Это Не работает почему ?
    в @MASS записывается все, а мне нужно только от ARGS='... до ' как это сделать, не пойму.
     
  2. Stan777

    Stan777 Гость

    Репутация:
    0

    мда опять пришлось делость по сишному.
    $flag=0;

    for($i=0;$i<=scalar(@R);$i++){
    if($R[$i] =~ /(ARGS=)\S/){
    $flag=2;
    }
    if($flag>0){
    push @MASS,$R[$i];
    if($R[$i] =~ /(')/){
    $flag--;
    print $i."here:".$R[$i]."\n";
    }
    }

    }

    И все в шоколаде. :), только осталась одна проблема как быть с
    ARGS=' aaaaaaaaaaa
    .............................
    ..............................
    wwwwwwwwwwwww'
    только меня не устраивает ARGS=' и wwwwwwwwwwwww' в конце что делать ?
    мне нужно удалять все до символа если он не последний и сам символ если он последний как это сделать ? Может кто знает ?
     
  3. zugr

    zugr Гость

    Репутация:
    0
    Код:
    $multiline = "";
    while(<>) {
    if (/^\s*ARGS=\S/ .. /\"\s*$/) {
    $multiline .= $_
    } else {
    if ($multiline) {
    push @MASS, $multiline;
    $multiline = "";
    }
    }
    }
    if ($multiline) {
    push @MASS, $multiline;
     
  4. Stan777

    Stan777 Гость

    Репутация:
    0
    а я к предыдущему коду еще это дописал :).

    Код:
    @tin= split(//,$MASS[$#MASS]);
    pop(@tin);											
    $MASS[$#MASS]= join "",@tin;
    Чтобы удалить последний симбол :).
     
  5. Stan777

    Stan777 Гость

    Репутация:
    0
    а я к предыдущему коду еще это дописал :).

    Код:
    @tin= split(//,$MASS[$#MASS]);
    pop(@tin);											
    $MASS[$#MASS]= join "",@tin;
    Чтобы удалить последний симбол :).
     
  6. _serg_

    _serg_ Гость

    Репутация:
    0
    Код:
    while(<FILE>) {
    next if $_ !~ /^\s*ARGS='/;
    next if $_ !~ /'\s*$/s;
    # сделать что-нить с $_ - она ща начинается с /\s*ARGS='/ и заканчивается '\s*$
    }

    Чтобы удалить последний пробельный символ:
    Код:
    $str =~ s/\s+$//s;
     
Загрузка...
Похожие Темы - Не могу вытащить
  1. Mister robot
    Ответов:
    15
    Просмотров:
    142
  2. Lustrator
    Ответов:
    21
    Просмотров:
    156
  3. marraty
    Ответов:
    45
    Просмотров:
    447
  4. TechOn
    Ответов:
    0
    Просмотров:
    34
  5. erlan1749
    Ответов:
    3
    Просмотров:
    70
Статус темы:
Закрыта.

Поделиться этой страницей