간단한 회전큐 로직을 작성하는 문제...


역시 업무에 쓰이지 않으니까... 그새 문법이고 뭐고 다 까먹었다..-.ㅜ



Posted by 용식

댓글을 달아 주세요

http://stackoverflow.com/questions/10729015/pass-array-and-scalar-to-subroutine-perl



perl에서 subroution을 작성하고, 파라메터를 넘길경우 일반적으로 아래와 같이 받는다.


my($a, $b, $c) = @_;


그런데 array를 파라메터로 넘기고 싶은 경우 ... 아래와 같이..


callsub(@array, 2,3);


단순히 이렇게 받으면 될줄 알았다.


my(@a,$b,$c) = @_;


그런데.. $b, $c가 제대로 넘어오지 않는다.. 찾아보니 파라메터 자체가 array로 인식이 되는것 같다.

그래서 아래와 같은 방법들을 사용하라고 되어있다.



첫번째는 배열 파라메터를 제일 뒤로...
두번째는 배열의 레퍼런스를 넘기고 그걸 받아서 다시 배열화 시키는 방법.



Posted by 용식

댓글을 달아 주세요

간단한 필드와 메서드를 가진 perl 모듈 파일을 만들어서

클래스처럼 사용하는 법..


여러가지 예들이 있는데

그냥 얼마전에 개발하면서 직접 구현했던걸.. 잊어먹지 않기 위해 정리..


File.pm


위 파일을 실행 파일이 있는 경로에서
DEVYONGSIK이라는 하위 디렉토리를 만들어서 저장한다.

사용..


Posted by 용식
TAG perl

댓글을 달아 주세요

  1. JEEN 2012.10.09 18:25  댓글주소  수정/삭제  댓글쓰기

    펄을 사용하시는 가 보군요 :-)

    국내에 펄 커뮤니티가 있습니다.

    http://webchat.freenode.net/?channels=perl-kr 에 오시면 많은 펄 사용자들과 만나실 수 있습니다.

    http://www.facebook.com/groups/perl.kr/ 페이스북 그룹도 있어요 :-)

    http://event.perl.kr/kpw2012/ 그리고 다음주 토요일 펄 워크샾이 열립니다.

    • 용식 2012.10.09 23:34 신고  댓글주소  수정/삭제

      안녕하세요 :)
      좋은 정보 감사드립니다.

      펄을 본격적으로 사용하는 것은 아니고..
      서버 쉘 프로그래밍을 할 일이 있을 때 조금씩 사용하고 있습니다.
      페이스북 페이지에는 가입 신청을 하였어요 ^^

      감사합니다~

간단하게 테스트 할 일이 있어서..

Get방식이 지원되면 wget으로 했을텐데..post만 지원되는 상황이라

perl로...


필요 라이브러리

HTTP:Date

HTTP:Message

Net::HTTP

LWP::UserAgent



Posted by 용식
TAG http, perl

댓글을 달아 주세요



조언과 잘못된 부분에 대한 지적을 해주신 Camel님 정말 감사드립니다. (_ _)


Posted by 용식

댓글을 달아 주세요

  1. camel 2012.03.31 12:47  댓글주소  수정/삭제  댓글쓰기

    배열에 숫자를 넣고 숫자가 있는지 판별하는데 정규식을 사용하면 숫자를 문자로 다시 암묵적으로 문자로 변환시켜 다 시 비교하게 되므로 숫자 비교를 위해서는
    if ( grep { $_ == 3 } @test_list ) { 로 하는게 더 나아보이네요
    만약에 검출 대상이 만약 문자이고 명시적인 비교라면 굳이 정규식을 복잡하게 쓸 필요 없이
    if ( grep { $_ eq '3' } @test_list ) { 로 하는게 낫겠고요.
    그런데 grep은 원하는걸 찾아도 끝까지 다 검색하므로 배열이 클경우 쓸데없는 연산을 더하게 되므로
    찾는 즉시 끝내려면 List::Util 모듈에 first 함수를 써서
    first { $_ == 3 } @test_list 로 하는게 더 빠릅니다.

    그리고 $#test_list는 배열의 마지막 인덱스 번호를 말하므로 scalar @test_list 와 같아지려면 $#test_list + 1 로 해야될 것 같네요.

    • 용식 2012.03.31 19:09 신고  댓글주소  수정/삭제

      안녕하세요?
      정말 정말 감사합니다.

      사실 Perl을 처음 공부하면서도 (루비나 파이썬이나..)
      이렇게 포스트로 남겨두는 이유가..자꾸 까먹어서.. 그리고 고수분들께 조언을 받고 싶어서였는데
      정말 금같은 조언이에요.

      정말 감사합니다.


Posted by 용식
TAG Hash, perl

댓글을 달아 주세요


Posted by 용식

댓글을 달아 주세요

  1. camel 2012.03.31 12:54  댓글주소  수정/삭제  댓글쓰기

    my $r = (); 는 my %r = (); 의 오타인것 같네요
    그리고 perl에서는 배열이나 해시선언시 초기화가 확실히 보장되므로 굳이 ()로 초기화를 안해도 됩니다.

[Perl] 2진수변환

Perl 2012.03.11 07:52
Posted by 용식

댓글을 달아 주세요

[Perl] reverse string

Perl 2012.03.11 07:49
Posted by 용식

댓글을 달아 주세요

[Perl] Array to String

Perl 2012.03.08 00:15
Posted by 용식

댓글을 달아 주세요