자바 프로그래머 를 위 한 10 분 Perl 튜 토리 얼

4578 단어 펄 튜 토리 얼
1.기초 부터
자바 와 달리 펄 은"main"방법 을 입구 점 으로 할 필요 가 없습니다.간단 한 Perl 프로그램 을 실행 하려 면 다음 과 같 습 니 다.

# comment starts with "#"
# the name is hello.pl
print "Hello Perl!";
실행:
perl hello.pl
2.날짜 종류
Perl 의 날짜 유형 은 매우 간단 합 니 다.3 가지 유형 이 있 습 니 다.스칼라,배열,Hash.
표 지 는 하나의 값 입 니 다.기본적으로 다른 배열 이나 해시 일 수 있 습 니 다.배열 은 정수,문자열 등 다양한 종류의 요 소 를 포함 할 수 있 는 배열 입 니 다.
하 쉬 는 기본적으로 자바 같은 HashMap 에서
아래 코드 를 모든 사용 상황 과 결합 합 니 다.

#claim a hash and assign some values
my %aHash;
$aHash{'a'}=0;
$aHash{'b'}=1;
$aHash{'c'}=2;
$aHash{'d'}=3;
$aHash{'e'}=4;

#put all keys to an array
my @anArray = keys (%aHash);

#loop array and output each scalar
foreach my $aScalar (@anArray){
 print $aScalar."
";
}
출력 결과:

e
c
a

d
배열 을 정렬 하려 면 다음 과 같은 정렬 기능 을 간단하게 사용 할 수 있 습 니 다.

foreach my $aScalar (sort @anArray){
 print $aScalar."
";
}
3.조건,순환 식
Perl 은 조건 과 순환 문 구 를 위해 if,while,for,foreach 등 키 워드 를 준 비 했 습 니 다.이것 은 자바 와 매우 유사 합 니 다(switch 제외).
자세 한 내용 은 아래 코드 를 보십시오.

#if my $condition = 0;
if( $condition == 0){
    print "=0
";
}
elsif($condition == 1){
    print "=1
";
}
else{
    print "others
";
}

 
#while while($condition < 5){
    print $condition;
    $condition++;
}
for(my $i=0; $i< 5; $i++){
    print $i;
}

#foreach my @anArray = ("a", 1, 'c');
    foreach my $aScalar (sort @anArray){
        print $aScalar."
";
}
4.파일 읽 기와 쓰기
아래 의 이 예 는 우리 에 게 어떻게 파일 을 읽 고 쓰 는 지 보 여 주 었 다.">"와">"사이 의 차 이 를 주의 하 십시오.">"는 파일 끝 에 내용 을 추가 하고">"는 새로운 파일 저장 정 보 를 만 듭 니 다.

#read from a file
my $file = "input.txt";
open(my $fh, "<", $file) or die "cannot open < $file!";
while ( my $aline = <$fh> ) {
    #chomp so no new line character
    chomp($aline);
    print $aline;
}

close $fh;

# write to a file
my $output = "output.txt";
open (my $fhOutput, ">", $output) or die("Error: Cannot open $output file!");
print $fhOutput "something";
close $fhOutput;

5.정규 표현 식
Perl 에는 정규 표현 식 을 사용 하 는 두 가지 방법 이 있 습 니 다:m 와 s.
다음 코드 는$str 에 정규 표현 식 을 적용 합 니 다.
$str =~ m/program(creek|river)/ 
$str 의 내용 이"programcreek"이면 표현 식 은 true 로 돌아 갑 니 다.이것 도 조건 판단 이나 순환 에 사 용 될 수 있다.   
6.인용 문법
Perl 에 서 는 방법/함 수 를 정의 할 필요 가 없 지만,만약 당신 이 이렇게 한다 면 코드 의 모듈 화 와 충전 가능성 을 크게 향상 시 킬 것 입 니 다.그러나 우 리 는 매개 변수의 전달 에 대해 매우 조심해 야 한다.
당신 은 직접 스칼라 를 전달 할 수 있 지만,배열 이나 해시 류 를 전달 하 는 것 이 라면 특별한 조심해 야 합 니 다.
배열:

my @testArray = (1, 3, 2);

#In sub sub processArrayByReference($) {
    my $arrayref = shift;
    my @array    = @$arrayref;
    #...
}

#In sub processarray: sub processArrayByValue($){
    my @array = @_;
 #...
}

processArrayByValue(@testArray);
processArrayByReference( \@testArray );

하 계 류:

sub printHash($) {
my %hash = %{ shift() };
for my $key ( sort keys %hash ) {
    my $value = $hash{$key};
    print "$key => $value
";
}
}

printHash(\%twoLettersCount);
7.실례 몇 개
1).문자열 의 모든 문 자 를 옮 겨 다 닙 니 다.

my @lineCharArray = split('',$aline);
foreach my $character (@lineCharArray){
    print $character."
";
}
2).26 자 모 를 포함 하 는 배열 을 만 듭 니 다.너 는 이 기능 을 간단하게 실현 할 수 있 고 26 번 순환 할 필요 가 없다.

my @charArray = ('a'..'z' );
my @twoCharArray = ('aa'..'zz');
이상 은 첫 번 째 버 전의'10 분'입 니 다.저 는 댓 글 에 따라 본 고 를 계속 업데이트 할 것 입 니 다.원문:http://www.programcreek.com/2012/09/10-minutes-perl-tutorial-for-java-developer/

좋은 웹페이지 즐겨찾기