Как сбросить вывод в обратных галочках В Perl?

Вы можете использовать уменьшение и удержание индексов, где вы найдете R:

var conversations = ['R: test1' ,'R: test3','tx','I sent' ]

var replies = conversations.reduce(function(op,message,index) {
    if(message.indexOf('R:')!== -1) {
      op.push(index)
    }
    return op
},[]);  

console.log(replies)

7
задан Svante 17 April 2009 в 01:08
поделиться

2 ответа

То, что вы, вероятно, хотите сделать, выглядит примерно так:

open(F, "someshellscript.sh|");
while (<F>) {
    print;
}
close(F);

Запускается someshellscript.sh и открывает канал, который читает его вывод. Цикл while читает каждую строку вывода, сгенерированного сценарием, и печатает ее. См. открыть страницу документации для получения дополнительной информации.

16
ответ дан 6 December 2019 в 10:03
поделиться

Проблема здесь в том, что экранирование обратными знаками сохраняет ваш сценарий в строку, которую вы затем печатаете. По этой причине не существует способа "смыть" с помощью print.

Использование команды system() должно печатать вывод непрерывно, но вы не сможете перехватить вывод:

system "someshellscript.sh";
3
ответ дан 6 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: