HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
a função do split () do Perl é usada quebrar acima uma corda em uma disposição em um teste padrão específico. PATTERN não é nada mas uma expressão regular que possa ser tão simples quanto um único caráter. Pelo defeito em cada exemplo do PATTERN a CORDA é rachada, mas você pode LIMITAR aquele a algum número específico dos exemplos.
|
função rachada
|
Racha a corda em uma disposição das cordas, retorna-a então. Pelo defeito, os campos vazios principais são preservados, e vazios arrastar são suprimidos.
|
split /PATTERN/,EXPR,LIMIT
split /PATTERN/,EXPR
split /PATTERN/
split
|
|
Se não no contexto da lista, retornos o número dos campos que são encontrados e splits @ _ em uma disposição. (No contexto da lista, se usando?? enquanto os delimitadores do teste padrão você podem o forçar o split em @ _, mas ainda retorna o valor da lista.) que o uso do split implícito a @ _ é deprecado, entretanto, desde ele clobbers seus argumentos à sub-rotina.
|
Se EXPR for omitido, racha a corda de $ _. E se o TESTE PADRÃO for omitido também, racha no whitespace (após ter saltado algum whitespace principal). Qualquer coisa que combinar o TESTE PADRÃO está feito exame para ser um delimitador que separe os campos. (Nota aqui que o delimitador pode ser mais longo de um caráter).
|
Se o LIMITE for especificado e positivo, racha não em mais do que o número dos campos (embora pode rachar acima em menos). Se o LIMITE não for especificado ou se for zero, os campos nulos arrastando estão descascados. Se o LIMITE for negativo ajustado, tratará como se um LIMITE arbitrariamente grande tinha sido especificado.
|
Um teste padrão que esteja combinando a corda nula (não confunde com um teste padrão // do zero, que seja justo um membro do jogo dos testes padrões que estão combinando uma corda nula) rachará acima do valor do EXPR em caráteres separados cada vez nele combina essa maneira. Por exemplo:
|
print join(':', split(/ */, 'hi there'));
produces the output 'h:i:t:h:e:r:e'.
The LIMIT parameter can be used to split a line partially
($login, $passwd, $remainder) = split(/:/, $_, 3);
|
|
Ao atribuir à lista, se o LIMITE for omitido, o Perl fornece o LIMITE um maior do que o número das variáveis que são suas dentro a lista, para evitar todo o trabalho desnecessário. Para a lista acima, o LIMITE seria “4” pelo defeito. Em algumas aplicações críticas do tempo behooves para não rachar acima em mais número dos campos do que você necessita realmente.
|
Se o TESTE PADRÃO consistir parênteses, os elementos de disposição adicionais estão criados então de cada um do substring combinando no delimitador.
|
split(/([,-])/, "1-10,20", 3);
produces the list value
(1, '-', 10, ',', 20)
|
|
Se você tivesse o encabeçamento inteiro de uma mensagem normal do email do Unix no $header variável, você poderia rachar acima deste em campos e em seus valores esta maneira:
|
$header =~ s / \ n \ s +/ /g; # fix continuation lines
%hdrs = (UNIX_FROM => split / ^ ( \ S*?):\ s* /m, $header);
|
|
O teste padrão /PATTERN/ pode ser substituído pela expressão para especificar os testes padrões que variam durante o runtime. (para a compilação runtime somente uma vez que você pode usar/$variable/o.)
|
Como o caso especial, especificar o TESTE PADRÃO do espaço (““) estará rachado no espaço branco apenas como a função rachada () com argumentos zero. Conseqüentemente o split (””) pode ser usado emular o comportamento do defeito dos awk, visto que no split (//) lhe dará apenas aqueles muitos campos iniciais nulos porque há uns em branco-espaços principais. O split () no/\ s+/é similar rachar (““) a não ser que esse todo o número de whitespace principal produza um primeiro campo nulo. () Uma função rachada com nenhuns argumentos faz realmente um split (””, $_) internamente.
|
open(PASSWD, '/etc/passwd');
while () {
($login, $passwd, $uid, $gid,
$gcos, $home, $shell) = split(/:/);
#...
}
|
|
Keywords:tutorial do Perl, certificados do Perl, Perl que programa, Perl ativo, download do Perl, Perl da amora, expressões regulares do Perl, split do Perl, disposição do Perl, página do certificado do Perl
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|