Sintaxe
Diferentes sintaxes de para cada Loop são dados abaixo.
A. foreach var (matriz)
declarações);
O loop foreach acima é usado para iterar os valores da matriz.
B. foreach var (file_handler)
declarações);
O loop foreach acima é usado para ler o conteúdo de um arquivo.
C. foreach var ()
declarações);
O loop foreach acima é usado para ler as entradas do usuário.
Diferentes usos do loop foreach foram mostrados na próxima parte deste tutorial.
Exemplo 1: Leia uma matriz unidimensional
Crie um arquivo Perl com o seguinte código que irá iterar os valores de uma matriz unidimensional usando um para cada loop e imprima cada valor da matriz em uma linha. Uma matriz de 5 valores de string foi definida no código. Em cada iteração do loop, cada valor da matriz será analisado e impresso na saída com a nova linha.
# Declare uma matriz de valores de string
@students = ("Mir Sabbir", "Meena Chowdhury", "Lisa Rahman", "Nirob Hossain", "Keya Khan");
# Itera os valores da matriz usando o loop foreach
foreach $ valor (@students)
# Imprima o valor da matriz
imprimir "$ valor \ n";
Saída
A saída a seguir aparecerá após a execução do código acima.
Exemplo 2: Leia uma matriz bidimensional
Crie um arquivo Perl com o seguinte código que irá iterar os valores de uma matriz bidimensional usando um para cada loop e imprima cada valor da matriz em uma linha. Uma matriz bidimensional de 4 linhas e 3 colunas foi definida no código. Uma nova linha extra foi adicionada após a iteração de todos os valores de uma linha. Os valores de cada linha foram analisados usando a variável de objeto definida no loop.
# Declare uma matriz bidimensional
@students = (
id => '20227856',
Nome => 'Neha Ali',
Marcas => 89
,
id => '20224523',
Nome => 'Mizanur Rahman',
Marcas => 95
,
id => '20221278',
Nome => 'Ruhul Amin',
Marcas => 69
,
id => '20228956',
Nome => 'Mehrab Hossain',
Marcas => 70
,
);
# Itera os valores da matriz
foreach $ std (@students)
# Imprima os valores da matriz
Imprima "ID do aluno:", $ std-> 'id', "\ n";
Imprima "Nome do aluno:", $ std-> 'nome', "\ n";
Imprima "Student Marks:", $ std-> 'Marks', "\ n \ n";
Saída
A saída a seguir aparecerá após a execução do código acima.
Exemplo 3: Leia o intervalo de valores
Crie um arquivo Perl com o seguinte código que irá iterar o para cada loop com base nos valores de uma matriz de intervalo. Em cada iteração, um valor numérico será retirado do usuário e inserido em uma matriz. Os valores desta matriz serão impressos após a conclusão da iteração do loop.
# Declare uma matriz
@lines;
# Itera o loop 4 vezes
para cada um número (1… 4)
# Mensagem de impressão para o usuário
Imprima "Digite um número:";
# Receba a entrada do usuário
$ line =;
# Adicione o valor de entrada à matriz
empurre @lines, $ line;
# Imprima os valores da matriz
Imprimir "\ Nurray Valores são: \ n", @Lines;
Saída
A saída a seguir aparecerá após a execução do código acima.
Exemplo-4: Leia o conteúdo de um arquivo
Crie um texto chamado meu arquivo.TXT com o conteúdo a seguir antes de testar o código deste exemplo.
meu arquivo.TXT
Perl é uma linguagem de programação de uso geral.
É semelhante em sintaxe à linguagem C.
É uma linguagem de código aberto e interpretado.
Crie um arquivo Perl com o seguinte código que lerá o conteúdo do meu arquivo.arquivo txt e imprima o conteúdo do arquivo usando um para cada laço. O abrir() A função foi usada no código para abrir o arquivo para leitura. O "<” symbol is used to open a file for reading in PERL. Next, the para cada O loop tem sido usado para ler e imprimir a linha de conteúdo de arquivo por linha.
# Defina o nome do arquivo
$ filename = 'myfile.TXT';
# Abra o arquivo para leitura
Abra $ file_handler, '<', $filename or die "Unable to open $filename file.";
# Leia cada linha do arquivo usando o loop foreach
foreach $ line ()
# Imprima a linha do arquivo
Imprima $ linha;
Saída
A saída a seguir aparecerá após a execução do código acima se o meu arquivo.TXT O arquivo não existe no local atual.
Depois de criar o meu arquivo.TXT Arquivo, a saída a seguir aparecerá após a execução do script acima.
Exemplo 5: Controle o loop foreach usando a palavra-chave "Última"
Crie um arquivo Perl com o seguinte código em que o para cada O loop será encerrado usando o durar palavra -chave com base no “se" doença. O para cada O loop itera 10 vezes com base na matriz Range. O loop será encerrado após a iteração do loop 4 vezes.
# Defina o loop para iterar 10 vezes
foreach $ número (1… 10)
# Imprima o valor atual
imprimir "O número atual é $ número.\ n ";
#Mermine o loop com base na condição 'se'
último se $ número> 3;
# Imprima a mensagem de terminação
imprimir "O loop é encerrado.\ n ";
Saída
A saída a seguir aparecerá após a execução do código acima.
Exemplo 6: Leia os valores de várias matrizes
Crie um arquivo Perl com o seguinte código que imprimirá os valores de duas matrizes numéricas usando um único para cada laço. Os valores de duas matrizes e os valores mesclados dessas matrizes serão impressos após a execução do código.
# Defina a primeira matriz
@Array1 = (20, 30, 65);
# Defina a segunda matriz
@Array2 = (45, 18, 60, 11);
Imprima "Os primeiros valores da matriz são: \ n", junção (",@Array1)," \ n ";
Imprimir "Os valores da segunda matriz são: \ n", junção (",@Array2)," \ n ";
Imprimir "Os valores de ambas as matrizes são: \ n";
# Leia os valores de ambas as matrizes usando loop
foreach $ número ( @Array1, @Array2)
# Imprima o valor da matriz
imprimir "$ número";
imprimir "\ n";
Saída
A saída a seguir aparecerá após a execução do código acima
Conclusão
As maneiras de usar o foreach Loop para analisar matrizes unidimensionais, matrizes bidimensionais, várias matrizes e o conteúdo do arquivo foram mostradas neste tutorial para ajudar o usuário Perl a conhecer os usos do para cada loop em perl corretamente.